Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    Automatic Cache Synchronization

    SmartClient Version: v13.0p_2024-12-03/Enterprise Deployment (built 2024-12-03)

    Oracle DB

    Hello, please see this datasource test case:

    Code:
    <DataSource xmlns="http://www.smartclient.com/schema"
                schema="DBSALES"
                dbName="myDB"
                tableName="JPC_TEST_CASE"
                ID="JPC_TEST_CASE"
                serverType="sql"
            >
        <fields>
            <field primaryKey="true" name="ID_REC" type="sequence" hidden="true" sequenceName="SEQUENCE_ID_REC"/>
            <field name="DATA_PASSAGGIO_STATO" type="datetime"/>
            <field name="ID_STATO_CONTRATTO_FK" type="integer" foreignKey="JPC_STATI_CONTRATTO.ID_REC" hidden="true"/>
            <field name="STATO_CONTRATTO" type="text" includeFrom="JPC_STATI_CONTRATTO.CODICE"/>
        </fields>
        <operationBindings>
            <operationBinding operationType="fetch">
                <orderClause>DATA_PASSAGGIO_STATO desc, STATO_CONTRATTO asc</orderClause>
            </operationBinding>
        </operationBindings>
    </DataSource>
    the table DDL is:

    Code:
    create table DBSALES.JPC_TEST_CASE
    (
        ID_REC NUMBER not null
            constraint JPC_TEST_CASE_PK
                primary key,
        ID_STATO_CONTRATTO_FK NUMBER not null
            constraint JPC_TEST_CASE_FK2
                references DBSALES.JPC_STATI_CONTRATTO,
        DATA_PASSAGGIO_STATO DATE default sysdate not null
    )
    /
    If I run an add like this:
    Code:
    JPC_TEST_CASE.addData({ID_STATO_CONTRATTO_FK:495358})
    I see this in the tomcat log:

    Code:
    2024-12-10T18:22:11,829 DEBUG RPCManager Starting request parsing
    2024-12-10T18:22:11,969 DEBUG RPCManager Done request parsing
    2024-12-10T18:22:11,969 DEBUG RPCManager Processing 1 requests.
    2024-12-10T18:22:11,972 DEBUG RPCManager Request #1 (DSRequest) payload: {
        values:{
            ID_STATO_CONTRATTO_FK:495358
        },
        operationConfig:{
            dataSource:"JPC_TEST_CASE",
            repo:null,
            operationType:"add",
            textMatchStyle:"exact"
        },
        appID:"builtinApplication",
        operation:"JPC_TEST_CASE_add",
        oldValues:{
            ID_STATO_CONTRATTO_FK:495358
        },
        criteria:{
        }
    }
    2024-12-10T18:22:11,972 INFO IDACall Performing 1 operation(s) [UA: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:133.0) Gecko/20100101 Firefox/133.0]
    2024-12-10T18:22:11,972 INFO DSRequest Executing JPC_TEST_CASE.add with
    criteria: {}
    values: {ID_STATO_CONTRATTO_FK:495358}
    2024-12-10T18:22:11,975 DEBUG AppBase No userTypes defined, allowing anyone access to all operations for this application
    2024-12-10T18:22:11,976 DEBUG AppBase No public zero-argument method named '_JPC_TEST_CASE_add' found, performing generic datasource operation
    2024-12-10T18:22:11,982 DEBUG SQLValuesClause Sequences: {ID_REC=SEQUENCE_ID_REC}
    2024-12-10T18:22:11,982 DEBUG SQLDataSource In getSchemaName(); for DataSource JPC_TEST_CASE
    2024-12-10T18:22:11,983 DEBUG SQLDataSource 'schema' retrieved from config is 'DBSALES'
    2024-12-10T18:22:11,984 DEBUG SQLDataSource In getSchemaName(); for DataSource JPC_TEST_CASE
    2024-12-10T18:22:11,984 DEBUG SQLDataSource 'schema' retrieved from config is 'DBSALES'
    2024-12-10T18:22:11,991 DEBUG PoolableSQLConnectionFactory makeObject() created an unpooled Connection '149773300'
    2024-12-10T18:22:11,992 DEBUG SQLConnectionManager Borrowed connection '149773300' from DBCP
    2024-12-10T18:22:11,992 DEBUG SQLTransaction Started new dbJpcEP transaction "149773300"
    2024-12-10T18:22:11,992 DEBUG SQLDataSource Setting DSRequest as being part of a transaction on connection 149773300
    2024-12-10T18:22:11,992 INFO SQL Executing SQL query on 'dbJpcEP': INSERT INTO DBSALES.JPC_TEST_CASE (ID_STATO_CONTRATTO_FK, ID_REC) VALUES (495358, DBSALES.SEQUENCE_ID_REC.NextVal)
    2024-12-10T18:22:11,995 INFO DSRequest Switching cacheSyncTiming to 'immediate' because this is a client 'add' request (dataSource is 'JPC_TEST_CASE')
    2024-12-10T18:22:11,995 DEBUG SQLDataSource Setting DSRequest as being part of a transaction on connection 149773300
    2024-12-10T18:22:11,995 INFO SQL Executing SQL query on 'dbJpcEP': SELECT DBSALES.SEQUENCE_ID_REC.CurrVal FROM DUAL
    2024-12-10T18:22:11,998 INFO SQLDataSource Issuing query to determine Java types of generated keys in DataSource JPC_TEST_CASE
    2024-12-10T18:22:12,000 DEBUG SQLDataSource In getSchemaName(); for DataSource JPC_TEST_CASE
    2024-12-10T18:22:12,000 DEBUG SQLDataSource 'schema' retrieved from config is 'DBSALES'
    2024-12-10T18:22:12,001 INFO SQLWhereClause empty condition
    2024-12-10T18:22:12,001 INFO SQLDataSource derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause ORDER BY DATA_PASSAGGIO_STATO desc, STATO_CONTRATTO asc
    2024-12-10T18:22:12,002 DEBUG SQLDataSource Using SQL Limit query
    2024-12-10T18:22:12,002 DEBUG SQL SQL windowed select rows 0->1, result size 1. Query: SELECT * FROM (SELECT /*+ FIRST_ROWS(1) */ a.*, rownum myrownum FROM (SELECT JPC_TEST_CASE.ID_REC FROM DBSALES.JPC_TEST_CASE WHERE ('1'='1') ORDER BY DATA_PASSAGGIO_STATO desc, STATO_CONTRATTO asc) a where rownum <=1) WHERE myrownum >= 1
    2024-12-10T18:22:12,006 WARN SQLDataSource Caught Exception trying to determine Generated Key Types
    2024-12-10T18:22:12,009 WARN SQLDriver Sequence size 'large' was used because no settings were found at dbName or dbType level (dbName is 'dbJpcEP', dbType is 'oracle')
    2024-12-10T18:22:12,009 WARN SQLDriver Transforming sequence value to default 'Large' type java.lang.Long
    2024-12-10T18:22:12,009 INFO DSRequest primaryKeys: {ID_REC=35182332}
    2024-12-10T18:22:12,009 DEBUG SQLDataSource Gathered all keys. lastPrimaryKeys is now {ID_REC=35182332}
    2024-12-10T18:22:12,010 DEBUG SQLDataSource add operation affected 1 rows
    2024-12-10T18:22:12,010 INFO SQLRefetchStrategy JPC_TEST_CASE: using default operationBinding
    2024-12-10T18:22:12,010 DEBUG SQLDataSource In getSchemaName(); for DataSource JPC_TEST_CASE
    2024-12-10T18:22:12,010 DEBUG SQLDataSource 'schema' retrieved from config is 'DBSALES'
    2024-12-10T18:22:12,011 INFO DSRequest Executing JPC_TEST_CASE.fetch rows: 0->-1 with
    criteria: {ID_REC:35182332}
    2024-12-10T18:22:12,011 DEBUG AppBase No userTypes defined, allowing anyone access to all operations for this application
    2024-12-10T18:22:12,012 DEBUG AppBase No public zero-argument method named '_null' found, performing generic datasource operation
    2024-12-10T18:22:12,012 DEBUG SQLDataSource In getSchemaName(); for DataSource JPC_TEST_CASE
    2024-12-10T18:22:12,013 DEBUG SQLDataSource 'schema' retrieved from config is 'DBSALES'
    2024-12-10T18:22:12,013 DEBUG SQLDataSource In getSchemaName(); for DataSource JPC_STATI_CONTRATTO
    2024-12-10T18:22:12,013 DEBUG SQLDataSource 'schema' retrieved from config is 'DBSALES'
    2024-12-10T18:22:12,013 INFO SQLDataSource derived query: SELECT $defaultSelectClause FROM $defaultTableClause WHERE $defaultWhereClause AND $defaultJoinWhereClause ORDER BY DATA_PASSAGGIO_STATO desc, STATO_CONTRATTO asc
    2024-12-10T18:22:12,015 DEBUG SQLDataSource JDBC driver windowed select rows 0->-1, result size 1. Query: SELECT JPC_TEST_CASE.ID_REC, JPC_TEST_CASE.DATA_PASSAGGIO_STATO, JPC_TEST_CASE.ID_STATO_CONTRATTO_FK, JPC_STATI_CONTRATTO.CODICE AS STATO_CONTRATTO FROM DBSALES.JPC_TEST_CASE, DBSALES.JPC_STATI_CONTRATTO WHERE (JPC_TEST_CASE.ID_REC=35182332) AND JPC_TEST_CASE.ID_STATO_CONTRATTO_FK = JPC_STATI_CONTRATTO.ID_REC ORDER BY DATA_PASSAGGIO_STATO desc, STATO_CONTRATTO asc
    2024-12-10T18:22:12,015 DEBUG SQLDataSource Setting DSRequest as being part of a transaction on connection 149773300
    2024-12-10T18:22:12,018 DEBUG SQLDataSource Using paging strategy 'jdbcScroll' - scrolling to absolute position 1
    2024-12-10T18:22:12,018 DEBUG SQLDataSource Scrolling / positioning took 0ms
    2024-12-10T18:22:12,020 INFO DSResponse DSResponse: List with 1 items
    2024-12-10T18:22:12,020 INFO DSResponse DSResponse: List with 1 items
    2024-12-10T18:22:12,020 DEBUG RPCManager Content type for RPC transaction: text/plain; charset=UTF-8
    2024-12-10T18:22:12,020 DEBUG SQLTransaction Committing dbJpcEP transaction "149773300"
    2024-12-10T18:22:12,035 DEBUG RPCManager non-DMI response, dropExtraFields: false
    2024-12-10T18:22:12,035 DEBUG SQLTransaction getConnection() looked for transactional connection for dbJpcEP: hashcode "149773300"
    2024-12-10T18:22:12,035 DEBUG SQLTransaction Ending dbJpcEP transaction "149773300"
    2024-12-10T18:22:12,036 DEBUG SQLConnectionManager About to close PoolGuardConnectionWrapper with hashcode "149773300"
    2024-12-10T18:22:12,037 DEBUG SQLDataSource About to clear SQLDriver state for DS instance 422
    2024-12-10T18:22:12,037 DEBUG SQLDataSource About to clear SQLDriver state for DS instance 423
    2024-12-10T18:22:12,037 DEBUG SQLDataSource About to clear SQLDriver state for DS instance 422
    java.sql.SQLSyntaxErrorException: ORA-00904: "STATO_CONTRATTO": identificativo non valido
    
        at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:509) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:461) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1104) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:553) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:269) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:655) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:229) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:41) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.T4CStatement.executeForDescribe(T4CStatement.java:765) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:983) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:1362) ~[ojdbc8.jar:19.13.0.0.1]
        at oracle.jdbc.driver.OracleStatementWrapper.executeQuery(OracleStatementWrapper.java:369) ~[ojdbc8.jar:19.13.0.0.1]
        at org.apache.tomcat.dbcp.dbcp2.DelegatingStatement.executeQuery(DelegatingStatement.java:253) ~[tomcat-dbcp.jar:8.5.78]
        at org.apache.tomcat.dbcp.dbcp2.DelegatingStatement.executeQuery(DelegatingStatement.java:253) ~[tomcat-dbcp.jar:8.5.78]
        at com.isomorphic.sql.SQLDataSource.getGeneratedKeyTypes(SQLDataSource.java:5295) [isomorphic-sql-13.0-p20241203.jar:?]
        at com.isomorphic.sql.SQLDataSource.getGeneratedKeyTypes(SQLDataSource.java:5272) [isomorphic-sql-13.0-p20241203.jar:?]
        at com.isomorphic.sql.SQLDriver.getTransformedSequenceValue(SQLDriver.java:2362) [isomorphic-sql-13.0-p20241203.jar:?]
        at com.isomorphic.sql.OracleDriver.fetchLastPrimaryKeys(OracleDriver.java:251) [isomorphic-sql-13.0-p20241203.jar:?]
        at com.isomorphic.sql.SQLDataSource.fetchLastPrimaryKeys(SQLDataSource.java:815) [isomorphic-sql-13.0-p20241203.jar:?]
        at com.isomorphic.datasource.DSRequest.getLastPrimaryKeys(DSRequest.java:340) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at com.isomorphic.sql.SQLDataSource.SQLExecute(SQLDataSource.java:2065) [isomorphic-sql-13.0-p20241203.jar:?]
        at com.isomorphic.sql.SQLDataSource.SQLExecute(SQLDataSource.java:1727) [isomorphic-sql-13.0-p20241203.jar:?]
        at com.isomorphic.sql.SQLDataSource.processRequest(SQLDataSource.java:522) [isomorphic-sql-13.0-p20241203.jar:?]
        at com.isomorphic.sql.SQLDataSource.executeAdd(SQLDataSource.java:466) [isomorphic-sql-13.0-p20241203.jar:?]
        at com.isomorphic.datasource.DataSource.execute(DataSource.java:2961) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at com.isomorphic.application.AppBase.executeDefaultDSOperation(AppBase.java:658) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at com.isomorphic.application.AppBase.executeAppOperation(AppBase.java:555) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at com.isomorphic.application.AppBase.execute(AppBase.java:498) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at com.isomorphic.datasource.DSRequest.execute(DSRequest.java:3493) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at com.isomorphic.servlet.IDACall.handleDSRequest(IDACall.java:230) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:187) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:152) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at com.isomorphic.servlet.IDACall._processRequest(IDACall.java:123) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at com.isomorphic.servlet.IDACall.doPost(IDACall.java:79) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:681) [servlet-api.jar:?]
        at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:178) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) [servlet-api.jar:?]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) [catalina.jar:8.5.78]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:8.5.78]
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) [tomcat-websocket.jar:8.5.78]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [catalina.jar:8.5.78]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:8.5.78]
        at com.juve.utils.Log4j2SessionFilter.doFilter(Log4j2SessionFilter.java:72) [classes/:build]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [catalina.jar:8.5.78]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:8.5.78]
        at com.isomorphic.servlet.CompressionFilter._doFilter(CompressionFilter.java:263) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at com.isomorphic.servlet.BaseFilter.doFilter(BaseFilter.java:91) [isomorphic-core-rpc-13.0-p20241203.jar:?]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [catalina.jar:8.5.78]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:8.5.78]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:170) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.authentication.ui.DefaultLogoutPageGeneratingFilter.doFilterInternal(DefaultLogoutPageGeneratingFilter.java:52) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:206) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:74) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:157) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178) [spring-security-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357) [spring-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270) [spring-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [catalina.jar:8.5.78]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:8.5.78]
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) [spring-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-5.1.6.RELEASE.jar:5.1.6.RELEASE]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [catalina.jar:8.5.78]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:8.5.78]
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:183) [catalina.jar:8.5.78]
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) [catalina.jar:8.5.78]
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543) [catalina.jar:8.5.78]
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) [catalina.jar:8.5.78]
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) [catalina.jar:8.5.78]
        at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698) [catalina.jar:8.5.78]
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) [catalina.jar:8.5.78]
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367) [catalina.jar:8.5.78]
        at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639) [tomcat-coyote.jar:8.5.78]
        at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) [tomcat-coyote.jar:8.5.78]
        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882) [tomcat-coyote.jar:8.5.78]
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1647) [tomcat-coyote.jar:8.5.78]
        at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-coyote.jar:8.5.78]
        at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) [tomcat-util.jar:8.5.78]
        at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) [tomcat-util.jar:8.5.78]
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-util.jar:8.5.78]
        at java.lang.Thread.run(Thread.java:750) [?:1.8.0_332]
    Caused by: oracle.jdbc.OracleDatabaseException: ORA-00904: "STATO_CONTRATTO": identificativo non valido
    
        at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:513) ~[ojdbc8.jar:19.13.0.0.1]
        ... 109 more
    I'm still trying to figure out the new Automatic Cache Synchronization behaviour, but I've got a few questions:

    1. this feature isn't documented in 13.0, is it expected to see it in action?
    2. the "DataSource Using SQL Limit query" part: I see a query which can't work because of the orderClause without the joins. Is it a bug?
    3. the "SQLDriver Sequence size 'large' was used because no settings were found at dbName or dbType level (dbName is 'dbJpcEP', dbType is 'oracle')" part: I've actually added:
    Code:
    sql.oracle.javaTypeForLargeKey:java.math.BigDecimal
    sql.oracle.javaTypeForSmallKey:java.math.BigDecimal
    in the server.properties, but this log hasn't changed

    #2
    Hello, could you please comment on this one?

    Comment


      #3
      Sorry for the delay, somebody will pick this up tomorrow

      Comment


        #4
        To answer your questions:
        1. The new cache sync system is present but undocumented in 13.0, and the intention is that default flag settings in that version ensure that customers see no behavioral difference. However, we missed a flag setting, which is why you are seeing that log about switching cacheSyncTiming; in this case, there is no actual behavioral difference - that log is telling you it is switching to the old default timing, but you shouldn't be seeing it because that should be the default anyway in 13.0. We have now changed it to default as intended, and you should not see that INFO log any more
        2. Technically, this problem arises because of the orderClause in your dataSource, and the same problem will occur if you ever have a case where you use "outputs" to exclude that column from the selection. For efficiency, if no column from a given joined table is required, we inhibit the join; in this case, the column is required, but we have no way of knowing that because the requirement is introduced by your custom orderClause. That said, the fetch that fails is coming from SmartClient code that is attempting to determine what Java class is returned by a fetch of the primary key column. However, that feature is supposed to be switched off by default, in all branches
        3. This is related to (2) - they are both caused by minor commits that should have been backported to 13.0, but were not. In this case, we renamed some properties to use "Key" instead of "Sequence", after it was discovered that some databases insist on the same numeric type at both ends of a foreign key relation. So your config changes are correct, but were having no effect because of this unported change
        All of these issues should be corrected in builds of 13.0 as of tomorrow - ie, builds dated January 7th or later. Please try it with your test case and let us know

        Comment


          #5
          Hello, everything seems fine now, thank you very much

          Comment

          Working...
          X