Hibernate Error: Unable to find column position by name

Enveronment:Hinernet 6.6. Java 17, Oracle 19.
I have a 3-table join selection not work:
String sql = “SELECT {T1.}, {T2.}, {T3.*} FROM MRS_NOTIFY_MSG_TYP T1, MRS_NOTIFY_USERS T2,” +
“MRS_NOTIFY_SEND_TO T3 WHERE T1.NOTIFY_MSG_TYPE = '”+commNotMsgType+“’ AND T2.NOTIFY_MSG_TYPE = ‘”+commNotMsgType+“’ AND " +
“T2.SEND_TO_LOC = T3.SEND_TO_LOC AND T2.SEND_TO_TYPE =T3.SEND_TO_TYPE AND T3.ACTV_IND = ‘Y’ AND (T3.YRD =’”+commYrd+”’ OR T3.YRD = ’ ')";
retreive data: get3EntitiesList(MrsNotifyMsgTyp.class,MrsNotifyUsers.class, MrsNotifySendTo.class,sql); bellow is the funtion:

public <T1, T2, T3> List<Object> get3EntitiesList(Class eClass1, Class eClass2,Class eClass3, String sql) throws Exception {
Session sess = null;
List<Object> myList = null;
Transaction transaction = null;
try{
sess = sessionFactory.getCurrentSession();
transaction = sess.beginTransaction();
myList = sess.createNativeQuery(sql, Object.class)
.addEntity(“T1”, eClass1)
.addEntity(“T2”, eClass2)
.addEntity(“T3”, eClass3)
.list();
transaction.commit();
}
catch(Exception ex) {
MarisUtility.logDBException(ex);
throw new Exception (“ThrowedDBException”);
}finally{
if(sess !=null) sess.close();
}
return myList;
}

The followings are the entities.

```
@Table(name = “MRS_NOTIFY_MSG_TYP”) //T1
@Entity
public class MrsNotifyMsgTyp implements java.io.Serializable {

private static final long serialVersionUID = 1L;
@Id
@Column(name = "NOTIFY_MSG_TYPE")
private String notifyMsgType;
@Column(name = "SEND_BROADCAST_IND")
 private String sendBroadcastInd;
@Column(name = "SEND_EMAIL_IND")
 private String sendEmailInd;
@Column(name = "MSG_REJECT_CD")
 private String msgRejectCd;
@Column(name = "MSG_TRAN_CD")
 private String msgTranCd;
@Column(name = "MSG_ERR_CD")
 private String msgErrCd;
@Column(name = "NOTIFY_MSG_TYP_DSC")
 private String notifyMsgTypDsc;
@Column(name = "DATETIME_LAST_UPD")
 private Date datetimeLastUpd;
@Column(name = "TERM_LAST_UPD")
 private String termLastUpd;
@Column(name = "DATETIME_MAINT_UPD")
 private Date datetimeMaintUpd;
@Column(name = "TERM_MAINT_UPD")
 private String termMaintUpd;
@Column(name = "NOTIFY_MSG")
 private String notifyMsg;

@OneToMany(mappedBy="mrsNotifyMsgTyp", fetch = FetchType.LAZY)
 private Set<MrsNotifyUsers> mrsNotifyUsers = new HashSet<MrsNotifyUsers>(0);
 ... get/set 
}

@Table(name = “MRS_NOTIFY_USERS”) // T2
@Entity
public class MrsNotifyUsers implements java.io.Serializable {
private static final long serialVersionUID = 1L;
@EmbeddedId
private MrsNotifyUsersPK comp_id;
@Column(name = “DATETIME_LAST_UPD”)
private Date datetimeLastUpd;
@Column(name = “TERM_LAST_UPD”)
private String termLastUpd;
@Column(name = “DATETIME_MAINT_UPD”)
private Date datetimeMaintUpd;
@Column(name = “TERM_MAINT_UPD”)
private String termMaintUpd;

@ManyToOne
@JoinColumn(name = "NOTIFY_MSG_TYPE",insertable=false, updatable=false )
 private MrsNotifyMsgTyp mrsNotifyMsgTyp;    

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumns({
     @JoinColumn(name = "SEND_TO_LOC",insertable=false, updatable=false),
     @JoinColumn(name = "SEND_TO_TYPE",insertable=false, updatable=false),
	})
 private MrsNotifySendTo mrsNotifySendTo;
 .. set/get

}

@Embeddable
public class MrsNotifyUsersPK implements java.io.Serializable, MiscelFuncs {
private static final long serialVersionUID = 1L;
@Column(name = “NOTIFY_MSG_TYPE”)
private String notifyMsgType;
@Column(name = “SEND_TO_LOC”)
private String sendToLoc;
@Column(name = “SEND_TO_TYPE”)
private String sendToType;

public MrsNotifyUsersPK(String notifyMsgType, String sendToLoc, String sendToType) {
   this.notifyMsgType = notifyMsgType;
   this.sendToLoc = sendToLoc;
   this.sendToType = sendToType;
}

@Table(name = “MRS_NOTIFY_SEND_TO”) //T3
@Entity
public class MrsNotifySendTo implements java.io.Serializable {
private static final long serialVersionUID = 1L;
@EmbeddedId
private MrsNotifySendToPK comp_id;
@Column(name = “ACTV_IND”)
private String actvInd;
@Column(name = “YRD”)
private String yrd;
@Column(name = “SEND_TO”)
private String sendTo;
@Column(name = “SEND_TO_DESC”)
private String sendToDesc;
@Column(name = “DATETIME_LAST_UPD”)
private Date datetimeLastUpd;
@Column(name = “TERM_LAST_UPD”)
private String termLastUpd;
@Column(name = “DATETIME_MAINT_UPD”)
private Date datetimeMaintUpd;
@Column(name = “TERM_MAINT_UPD”)
private String termMaintUpd;

@OneToMany(mappedBy="mrsNotifySendTo", fetch = FetchType.LAZY)
 private Set<MrsNotifyUsers> mrsNotifyUsers = new HashSet<MrsNotifyUsers>(0);
 ... //set.get

}

@Embeddable
public class MrsNotifySendToPK implements java.io.Serializable, MiscelFuncs {

private static final long serialVersionUID = 1L;
@Column(name = "SEND_TO_LOC")
private String sendToLoc;
@Column(name = "SEND_TO_TYPE")
 private String sendToType;

public MrsNotifySendToPK() {
}
public MrsNotifySendToPK(String sendToLoc, String sendToType) {
   this.sendToLoc = sendToLoc;
   this.sendToType = sendToType;
}
.../set/get

}

```

Columns of the tree tables:

column of MRS_NOTIFY_MSG_TYP T1
NOTIFY_MSG_TYPE (key)
SEND_BROADCAST_IND
SEND_EMAIL_IND
MSG_REJECT_CD
MSG_TRAN_CD
MSG_ERR_CD
NOTIFY_MSG_TYP_DSC
DATETIME_LAST_UPD
TERM_LAST_UPD
DATETIME_MAINT_UPD
TERM_MAINT_UPD
NOTIFY_MSG

COlumns of MRS_NOTIFY_USERS T2:
NOTIFY_MSG_TYPE (key column)
SEND_TO_LOC (key column)
SEND_TO_TYPE (key column)
DATETIME_LAST_UPD
TERM_LAST_UPD
DATETIME_MAINT_UPD
TERM_MAINT_UPD

column of MRS_NOTIFY_SEND_TO T3
SEND_TO_LOC (key column)
SEND_TO_TYPE (key column)
ACTV_IND
YRD
SEND_TO
SEND_TO_DESC
DATETIME_LAST_UPD
TERM_LAST_UPD
DATETIME_MAINT_UPD
TERM_MAINT_UPD

I have enabled SQL Debugging, the SQL and error message in log file:
/* dynamic native SQL query */ SELECT
T1.NOTIFY_MSG_TYPE notify_msg_type1_25_0_,
T1.DATETIME_LAST_UPD datetime_last_upd2_25_0_,
T1.DATETIME_MAINT_UPD datetime_maint_upd3_25_0_,
T1.MSG_ERR_CD msg_err_cd4_25_0_,
T1.MSG_REJECT_CD msg_reject_cd5_25_0_,
T1.MSG_TRAN_CD msg_tran_cd6_25_0_,
T1.NOTIFY_MSG notify_msg7_25_0_,
T1.NOTIFY_MSG_TYP_DSC notify_msg_typ_dsc8_25_0_,
T1.SEND_BROADCAST_IND send_broadcast_ind9_25_0_,
T1.SEND_EMAIL_IND send_email_ind10_25_0_,
T1.TERM_LAST_UPD term_last_upd11_25_0_,
T1.TERM_MAINT_UPD term_maint_upd12_25_0_,
T2.NOTIFY_MSG_TYPE notify_msg_type1_28_1_,
T2.SEND_TO_LOC send_to_loc2_28_1_,
T2.SEND_TO_TYPE send_to_type3_28_1_,
T2.DATETIME_LAST_UPD datetime_last_upd4_28_1_,
T2.DATETIME_MAINT_UPD datetime_maint_upd5_28_1_,
T2.TERM_LAST_UPD notify_msg_type1_28_1_,
T2.TERM_MAINT_UPD send_to_loc2_28_1_,
T3.SEND_TO_LOC send_to_loc1_27_2_,
T3.SEND_TO_TYPE send_to_type2_27_2_,
T3.ACTV_IND actv_ind3_27_2_,
T3.DATETIME_LAST_UPD datetime_last_upd4_27_2_,
T3.DATETIME_MAINT_UPD datetime_maint_upd5_27_2_,
T3.SEND_TO send_to6_27_2_,
T3.SEND_TO_DESC send_to_desc7_27_2_,
T3.TERM_LAST_UPD term_last_upd8_27_2_,
T3.TERM_MAINT_UPD term_maint_upd9_27_2_,
T3.YRD yrd10_27_2_
FROM
MRS_NOTIFY_MSG_TYP T1,
MRS_NOTIFY_USERS T2,
MRS_NOTIFY_SEND_TO T3
WHERE
T1.NOTIFY_MSG_TYPE = T2.NOTIFY_MSG_TYPE
and T2.SEND_TO_LOC=T3.SEND_TO_LOC
and T2.SEND_TO_TYPE=T3.SEND_TO_TYPE
AND T2.NOTIFY_MSG_TYPE = ‘SCN-NOGO’
AND T2.SEND_TO_LOC = T3.SEND_TO_LOC
AND T2.SEND_TO_TYPE =T3.SEND_TO_TYPE
AND T3.ACTV_IND = ‘Y’
AND (
T3.YRD =‘SCN-NOGO’
OR T3.YRD = ’ ’
)
25-08-07 11:43:05.450-0700 WARN SQL Error: 17006, SQLState: 99999
25-08-07 11:43:05.450-0700 ERROR Invalid column name
25-08-07 11:43:05.450-0700 DEBUG 1: Unable to find column position by name: term_last_upd6_28_1_

if I change the sql to this:
String sql = "SELECT " +
"T1.NOTIFY_MSG_TYPE AS T1_NOTIFY_MSG_TYPE, T1.SEND_BROADCAST_IND AS T1_SEND_BROADCAST_IND, "+
"T1.SEND_EMAIL_IND AS T1_SEND_EMAIL_IND, T1.MSG_REJECT_CD AS T1_MSG_REJECT_CD, "+
"T1.MSG_TRAN_CD AS T1_MSG_TRAN_CD, T1.MSG_ERR_CD AS T1_MSG_ERR_CD, "+
"T1.NOTIFY_MSG_TYP_DSC AS T1_NOTIFY_MSG_TYP_DSC, T1.DATETIME_LAST_UPD AS T1_DATETIME_LAST_UPD, "+
"T1.TERM_LAST_UPD AS T1_TERM_LAST_UPD, T1.DATETIME_MAINT_UPD AS T1_DATETIME_MAINT_UPD, "+
"T1.TERM_MAINT_UPD AS T1_TERM_MAINT_UPD, T1.NOTIFY_MSG AS T1_NOTIFY_MSG, "+
"T2.NOTIFY_MSG_TYPE AS T2_NOTIFY_MSG_TYPE, T2.SEND_TO_LOC AS T2_SEND_TO_LOC, "+
"T2.SEND_TO_TYPE AS T2_SEND_TO_TYPE, T2.DATETIME_LAST_UPD AS T2_DATETIME_LAST_UPD, "+
"T2.TERM_LAST_UPD AS T2_TERM_LAST_UPD, T2.DATETIME_MAINT_UPD AS T2_DATETIME_MAINT_UPD, "+
"T2.TERM_MAINT_UPD AS T2_TERM_MAINT_UPD, T3.SEND_TO_LOC AS T3_SEND_TO_LOC, "+
"T3.SEND_TO_TYPE AS T3_SEND_TO_TYPE, T3.ACTV_IND AS T3_ACTV_IND, "+
"T3.YRD AS T3_YRD, T3.SEND_TO AS T3_SEND_TO, "+
"T3.SEND_TO_DESC AS T3_SEND_TO_DESC, T3.DATETIME_LAST_UPD AS T3_DATETIME_LAST_UPD, "+
“T3.TERM_LAST_UPD AS T3_TERM_LAST_UPD, T3.DATETIME_MAINT_UPD AS T3_DATETIME_MAINT_UPD, “+
“T3.TERM_MAINT_UPD AS T3_TERM_MAINT_UPD " +
“FROM MRS_NOTIFY_MSG_TYP T1, MRS_NOTIFY_USERS T2,” +
“MRS_NOTIFY_SEND_TO T3 WHERE T1.NOTIFY_MSG_TYPE = T2.NOTIFY_MSG_TYPE AND T1.NOTIFY_MSG_TYPE = ‘”+commNotMsgType+”’ AND " +
“T2.SEND_TO_LOC = T3.SEND_TO_LOC AND T2.SEND_TO_TYPE =T3.SEND_TO_TYPE AND T3.ACTV_IND = ‘Y’ AND (T3.YRD =’”+commYrd+”’ OR T3.YRD = ’ ')”;

the error occurred on different column:
25-08-07 13:35:51.094-0700 WARN SQL Error: 17006, SQLState: 99999
25-08-07 13:35:51.094-0700 ERROR Invalid column name
25-08-07 13:35:51.101-0700 DEBUG 1: Unable to find column position by name: NOTIFY_MSG_TYPE
[Invalid column name]

Looks like the alias generation runs into a problem.

Please try to create a reproducer with our test case template and if you are able to reproduce the issue, create a bug ticket in our issue tracker and attach that reproducer.

Hi Beikov,

Thank you your reply.

I create the test project, run on windows with eclipse. get error on different columns:
ERROR: Column “T1.DATETIME_LAST_UPD” not found; similar as the original error throwed in the application.

JPAUnitTestCase.java.

```

package org.hibernate.bugs;
import jakarta.persistence.EntityManager;
import jakarta.persistence.EntityManagerFactory;
import jakarta.persistence.Persistence;
import org.junit.jupiter.api.*;
import org.hibernate.query.NativeQuery;
import java.util.List;

class JPAUnitTestCase {
private EntityManagerFactory entityManagerFactory;
@BeforeEach
void init() {
entityManagerFactory = Persistence.createEntityManagerFactory(“templatePU”);
}
@AfterEach
void destroy() {
entityManagerFactory.close();
}
@Test
void hhh123Test() {
EntityManager em = entityManagerFactory.createEntityManager();
em.getTransaction().begin();

    // Create minimal schema for test
    em.createNativeQuery("DROP TABLE IF EXISTS MRS_NOTIFY_SEND_TO").executeUpdate();
    em.createNativeQuery("DROP TABLE IF EXISTS MRS_NOTIFY_USERS").executeUpdate();
    em.createNativeQuery("DROP TABLE IF EXISTS MRS_NOTIFY_MSG_TYP").executeUpdate();
    em.createNativeQuery("  CREATE TABLE MRS_NOTIFY_MSG_TYP (  NOTIFY_MSG_TYPE VARCHAR(20) PRIMARY KEY, TERM_LAST_UPD TIMESTAMP)").executeUpdate();
    em.createNativeQuery(" CREATE TABLE MRS_NOTIFY_USERS ( NOTIFY_MSG_TYPE VARCHAR(20),  SEND_TO_LOC VARCHAR(20),  SEND_TO_TYPE VARCHAR(20) )").executeUpdate();
    em.createNativeQuery(" CREATE TABLE MRS_NOTIFY_SEND_TO (  SEND_TO_LOC VARCHAR(20), SEND_TO_TYPE VARCHAR(20), YRD VARCHAR(20), ACTV_IND CHAR(1) )").executeUpdate();

    String commNotMsgType = "SCN-NVRGO";
    String commYrd = "SCN-NVRGO";

    String sql0 = "SELECT {T1.*}, {T2.*}, {T3.*} " +
            "FROM MRS_NOTIFY_MSG_TYP T1, MRS_NOTIFY_USERS T2, MRS_NOTIFY_SEND_TO T3 " +
            "WHERE T1.NOTIFY_MSG_TYPE = '" + commNotMsgType + "' " +
            "AND T2.NOTIFY_MSG_TYPE = '" + commNotMsgType + "' " +
            "AND T2.SEND_TO_LOC = T3.SEND_TO_LOC " +
            "AND T2.SEND_TO_TYPE = T3.SEND_TO_TYPE " +
            "AND T3.ACTV_IND = 'Y' " +
            "AND (T3.YRD = '" + commYrd + "' OR T3.YRD = ' ')";
    try {
        List<?> list = em.createNativeQuery(sql0, Object.class)
                .unwrap(org.hibernate.query.NativeQuery.class)
                .addEntity("T1", MrsNotifyMsgTpy.class)
                .addEntity("T2", MrsNotifyUsers.class)
                .addEntity("T3", MrsNotifySendTo.class)
                .list();

        System.out.println("Result: " + list.size());
    } catch (Exception e) {
        e.printStackTrace();
        Assertions.fail(e);
    }
    em.getTransaction().commit();
    em.close();
}

}

```

maven dependencies in pom.xml:
```

junit junit 3.8.1 jakarta.persistence jakarta.persistence-api 3.1.0 org.junit.jupiter junit-jupiter-api 5.10.2 jakarta.persistence jakarta.persistence-api 3.1.0 org.hibernate.orm hibernate-core 6.6.0.Final com.h2database h2 2.2.224 test

```

In database, all the 3 Oracle tables have no foreign key constraint.

I doubt the mapping in the 3 table may have problem:

```
@Table(name = “MRS_NOTIFY_MSG_TYP”) //T1
@Entity
public class MrsNotifyMsgTpy implements java.io.Serializable {
@Id
@Column(name = “NOTIFY_MSG_TYPE”)
private String notifyMsgType;
@Column(name = “DATETIME_LAST_UPD”)
private Date datetimeLastUpd;

@OneToMany(mappedBy=“mrsNotifyMsgTpy”, fetch = FetchType.LAZY)
private Set mrsNotifyUsers = new HashSet(0);

public Date getDatetimeLastUpd() {
    return this.datetimeLastUpd;
}    
public void setDatetimeLastUpd(Date datetimeLastUpd) {
    this.datetimeLastUpd = datetimeLastUpd;
}

}

@Table(name = “MRS_NOTIFY_USERS”) // T2
@Entity
public class MrsNotifyUsers implements java.io.Serializable {
@Column(name = “DATETIME_LAST_UPD”)
private Date datetimeLastUpd;

@ManyToOne
@JoinColumn(name = “NOTIFY_MSG_TYPE”,insertable=false, updatable=false )
private MrsNotifyMsgTpy mrsNotifyMsgTpy;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumns({
     @JoinColumn(name = "SEND_TO_LOC",insertable=false, updatable=false),
     @JoinColumn(name = "SEND_TO_TYPE",insertable=false, updatable=false),
	})
 private MrsNotifySendTo mrsNotifySendTo;
 
public Date getDatetimeLastUpd() {
   return this.datetimeLastUpd;
}

public void setDatetimeLastUpd(Date datetimeLastUpd) {
    this.datetimeLastUpd = datetimeLastUpd;
}

}

@Table(name = “MRS_NOTIFY_SEND_TO”) //T3
@Entity
public class MrsNotifySendTo implements java.io.Serializable {
@Column(name = “DATETIME_LAST_UPD”)
private Date datetimeLastUpd;

 public Date getDatetimeLastUpd() {
    return this.datetimeLastUpd;
}    
public void setDatetimeLastUpd(Date datetimeLastUpd) {
    this.datetimeLastUpd = datetimeLastUpd;
}
......    
@OneToMany(mappedBy="mrsNotifySendTo", fetch = FetchType.LAZY)
 private Set<MrsNotifyUsers> mrsNotifyUsers = new HashSet<MrsNotifyUsers>(0);

}

```

persistence.xml:
```

org.hibernate.jpa.HibernatePersistenceProvider org.hibernate.bugs.MrsNotifyMsgTyp org.hibernate.bugs.MrsNotifyUsers org.hibernate.bugs.MrsNotifySendTo
    <properties>
        <property name="jakarta.persistence.jdbc.driver" value="org.h2.Driver"/>
        <property name="jakarta.persistence.jdbc.url" value="jdbc:h2:mem:test;DB_CLOSE_DELAY=-1"/>
        <property name="jakarta.persistence.jdbc.user" value="sa"/>
        <property name="jakarta.persistence.jdbc.password" value=""/>

        <property name="hibernate.hbm2ddl.auto" value="none"/>
        <property name="hibernate.show_sql" value="true"/>
        <property name="hibernate.format_sql" value="true"/>
    </properties>
</persistence-unit>

```

Bellow is the SQL and error displayed in console:
Hibernate:
DROP TABLE IF EXISTS MRS_NOTIFY_SEND_TO
Hibernate:
DROP TABLE IF EXISTS MRS_NOTIFY_USERS
Hibernate:
DROP TABLE IF EXISTS MRS_NOTIFY_MSG_TYP
Hibernate:
CREATE TABLE MRS_NOTIFY_MSG_TYP ( NOTIFY_MSG_TYPE VARCHAR(20) PRIMARY KEY, TERM_LAST_UPD TIMESTAMP)
Hibernate:
CREATE TABLE MRS_NOTIFY_USERS ( NOTIFY_MSG_TYPE VARCHAR(20), SEND_TO_LOC VARCHAR(20), SEND_TO_TYPE VARCHAR(20) )
Hibernate:
CREATE TABLE MRS_NOTIFY_SEND_TO ( SEND_TO_LOC VARCHAR(20), SEND_TO_TYPE VARCHAR(20), YRD VARCHAR(20), ACTV_IND CHAR(1) )
Hibernate:
SELECT
T1.NOTIFY_MSG_TYPE notify_m1_0_0_,
T1.DATETIME_LAST_UPD datetime2_0_0_,
T1.DATETIME_MAINT_UPD datetime3_0_0_,
T1.MSG_ERR_CD msg_err_4_0_0_,
T1.MSG_REJECT_CD msg_reje5_0_0_,
T1.MSG_TRAN_CD msg_tran6_0_0_,
T1.NOTIFY_MSG notify_m7_0_0_,
T1.NOTIFY_MSG_TYP_DSC notify_m8_0_0_,
T1.SEND_BROADCAST_IND send_bro9_0_0_,
T1.SEND_EMAIL_IND send_em10_0_0_,
T1.TERM_LAST_UPD term_la11_0_0_,
T1.TERM_MAINT_UPD term_ma12_0_0_,
T2.NOTIFY_MSG_TYPE notify_m1_2_1_,
T2.SEND_TO_LOC send_to_2_2_1_,
T2.SEND_TO_TYPE send_to_3_2_1_,
T2.DATETIME_LAST_UPD datetime4_2_1_,
T2.DATETIME_MAINT_UPD datetime5_2_1_,
T2.TERM_LAST_UPD notify_m1_2_1_,
T2.TERM_MAINT_UPD send_to_2_2_1_,
T3.SEND_TO_LOC send_to_1_1_2_,
T3.SEND_TO_TYPE send_to_2_1_2_,
T3.ACTV_IND actv_ind3_1_2_,
T3.DATETIME_LAST_UPD datetime4_1_2_,
T3.DATETIME_MAINT_UPD datetime5_1_2_,
T3.SEND_TO send_to6_1_2_,
T3.SEND_TO_DESC send_to_7_1_2_,
T3.TERM_LAST_UPD term_las8_1_2_,
T3.TERM_MAINT_UPD term_mai9_1_2_,
T3.YRD yrd10_1_2_
FROM
MRS_NOTIFY_MSG_TYP T1,
MRS_NOTIFY_USERS T2,
MRS_NOTIFY_SEND_TO T3
WHERE
T1.NOTIFY_MSG_TYPE = ‘SCN-NVRGO’
AND T2.NOTIFY_MSG_TYPE = ‘SCN-NVRGO’
AND T2.SEND_TO_LOC = T3.SEND_TO_LOC
AND T2.SEND_TO_TYPE = T3.SEND_TO_TYPE
AND T3.ACTV_IND = ‘Y’
AND (
T3.YRD = ‘SCN-NVRGO’
OR T3.YRD = ’ ’
)

WARN: SQL Error: 42122, SQLState: 42S22
Aug 08, 2025 2:42:44 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
ERROR: Column “T1.DATETIME_LAST_UPD” not found …

But is is for sure all the 3 entities and data table have the column DATETIME_LAST_UPD, I copied this sql into SQL developer, run without error.

I dug into this a bit more and found the bug. I created HHH-19712 to track this. Thanks for the report.