The request sent by the client was syntactically incorrect

Customer has run a legacy API call to OO 10.6 it failed with "The request sent by the client was syntactically incorrect"

The API call was:

https://10.31.1.62:8443/PAS/services/rest/execute_async/Library/CBAAutomation/PPMC/PPMC_FetchExtracts

This problem not always happen, just happen sometimes.

I searched the resource and got the problem of "The request sent by the client was syntactically incorrect" is typically caused by the data for the form is inconsistent with parameters that method needs.   And from customer's log I saw many times the OO is reconnect to DB.

So I suspect there may have some data are not synchronous in database. 

However the customer hope we provide specific reason to prove this issue. While I did not find any special information about this in log file.

Does anyone knows how to debut this problem, or give me some clue.

I attached related files.

 

Parents
  • Hi,

    Do you see any error message in the log file while running ?

    if yes, please share.

     

  • Hi, thanks for your reply, the error logs in execution.log at the timestamp is following:

    2017-11-14 18:42:17,836 [http-nio-8443-exec-28] (ExecutionQueueRepositoryImpl.java:480) ERROR - Failed to execute query: SELECT EXEC_STATE_ID, ASSIGNED_WORKER, EXEC_GROUP , STATUS, PAYLOAD, MSG_SEQ_ID , MSG_ID, q.CREATE_TIME FROM OO_EXECUTION_QUEUES q, OO_EXECUTION_STATES s WHERE (q.ASSIGNED_WORKER = ?) AND (q.STATUS IN (?)) AND (q.EXEC_STATE_ID = s.ID) AND (NOT EXISTS (SELECT qq.MSG_SEQ_ID FROM OO_EXECUTION_QUEUES qq WHERE (qq.EXEC_STATE_ID = q.EXEC_STATE_ID) AND qq.MSG_SEQ_ID > q.MSG_SEQ_ID)) ORDER BY q.CREATE_TIME org.springframework.dao.DataAccessResourceFailureException: PreparedStatementCallback; SQL [SELECT EXEC_STATE_ID, ASSIGNED_WORKER, EXEC_GROUP , STATUS, PAYLOAD, MSG_SEQ_ID , MSG_ID, q.CREATE_TIME FROM OO_EXECUTION_QUEUES q, OO_EXECUTION_STATES s WHERE (q.ASSIGNED_WORKER = ?) AND (q.STATUS IN (?)) AND (q.EXEC_STATE_ID = s.ID) AND (NOT EXISTS (SELECT qq.MSG_SEQ_ID FROM OO_EXECUTION_QUEUES qq WHERE (qq.EXEC_STATE_ID = q.EXEC_STATE_ID) AND qq.MSG_SEQ_ID > q.MSG_SEQ_ID)) ORDER BY q.CREATE_TIME ]; I/O Error: Read timed out; nested exception is java.sql.SQLException: I/O Error: Read timed out

    2017-11-14 21:06:17,528 [local-scheduler-persisted_Worker-8] (ExecutionQueueRepositoryImpl.java:480) ERROR - Failed to execute query: SELECT DISTINCT EXEC_STATE_ID FROM OO_EXECUTION_QUEUES WHERE (STATUS = 7) OR (STATUS = 8) OR (STATUS = 6)
    org.springframework.dao.DataAccessResourceFailureException: PreparedStatementCallback; SQL [ SELECT DISTINCT EXEC_STATE_ID FROM OO_EXECUTION_QUEUES WHERE (STATUS = 7) OR (STATUS = 8) OR (STATUS = 6) ]; I/O Error: Read timed out; nested exception is java.sql.SQLException: I/O Error: Read timed out

    2017-11-14 21:50:28,944 [http-nio-8443-exec-58] (ExecutionQueueRepositoryImpl.java:480) ERROR - Failed to execute query: SELECT EXEC_STATE_ID, ASSIGNED_WORKER, EXEC_GROUP , STATUS, PAYLOAD, MSG_SEQ_ID , MSG_ID, q.CREATE_TIME FROM OO_EXECUTION_QUEUES q, OO_EXECUTION_STATES s WHERE (q.ASSIGNED_WORKER = ?) AND (q.STATUS IN (?)) AND (q.EXEC_STATE_ID = s.ID) AND (NOT EXISTS (SELECT qq.MSG_SEQ_ID FROM OO_EXECUTION_QUEUES qq WHERE (qq.EXEC_STATE_ID = q.EXEC_STATE_ID) AND qq.MSG_SEQ_ID > q.MSG_SEQ_ID)) ORDER BY q.CREATE_TIME
    org.springframework.dao.DataAccessResourceFailureException: PreparedStatementCallback; SQL [SELECT EXEC_STATE_ID, ASSIGNED_WORKER, EXEC_GROUP , STATUS, PAYLOAD, MSG_SEQ_ID , MSG_ID, q.CREATE_TIME FROM OO_EXECUTION_QUEUES q, OO_EXECUTION_STATES s WHERE (q.ASSIGNED_WORKER = ?) AND (q.STATUS IN (?)) AND (q.EXEC_STATE_ID = s.ID) AND (NOT EXISTS (SELECT qq.MSG_SEQ_ID FROM OO_EXECUTION_QUEUES qq WHERE (qq.EXEC_STATE_ID = q.EXEC_STATE_ID) AND qq.MSG_SEQ_ID > q.MSG_SEQ_ID)) ORDER BY q.CREATE_TIME ]; I/O Error: Read timed out; nested exception is java.sql.SQLException: I/O Error: Read timed out

     

     

     

  • in general.log, we found this error:

    2017-11-14 21:50:01,583 [http-nio-8443-exec-59] (SqlExceptionHelper.java:146) ERROR - Violation of UNIQUE KEY constraint 'UQ_OO_RUNTIME_VALUE_STORE_KEY'. Cannot insert duplicate key in object 'dbo.OO_RUNTIME_VALUE_STORE'. The duplicate key value is (LOCK:20171114205630-1496046490-9f70b0af-ec48-4d27-93a0-7768dff64e67.xmltemp).

    in server.log, we found this error:

    2017-11-14 21:06:22,235 [http-nio-8443-exec-5] (FlowExecutionV2Controller.java:251) ERROR - Could not roll back JPA transaction; nested exception is javax.persistence.PersistenceException: unexpected error when rollbacking
    org.springframework.transaction.TransactionSystemException: Could not roll back JPA transaction; nested exception is javax.persistence.PersistenceException: unexpected error when rollbacking

    in Wrap.log

    INFO | jvm 1 | 2017/11/14 22:11:43 | SEVERE: Servlet.service() for servlet [backwards-compatibility] in context with path [/oo] threw exception
    INFO | jvm 1 | 2017/11/14 22:11:43 | java.lang.RuntimeException: org.springframework.orm.jpa.JpaSystemException: could not inspect JDBC autocommit mode; nested exception is org.hibernate.exception.GenericJDBCException: could not inspect JDBC autocommit mode

     

  • Verified Answer

    Hello Foy,

             I see 2 things: 

    • The API call is being performed with with incorrect/missing parameters. Please, check if the parameters are the same all the time or if they may vary.
    • I see hibernate errors that might be related to some networking issues which leads the request to end up with a Read Timeout error. Verify if there are network problems that might affect transactions.

     

    I hope this information helps.

     

    Regards,

    Luis Quiros

Reply
  • Verified Answer

    Hello Foy,

             I see 2 things: 

    • The API call is being performed with with incorrect/missing parameters. Please, check if the parameters are the same all the time or if they may vary.
    • I see hibernate errors that might be related to some networking issues which leads the request to end up with a Read Timeout error. Verify if there are network problems that might affect transactions.

     

    I hope this information helps.

     

    Regards,

    Luis Quiros

Children
No Data