JADE Environment Development Ideas

What's new in the upcoming JADE release?

IMPROVED DEVELOPER EFFICIENCY. ENHANCED SECURITY. SMOOTHER INTEGRATION

The JADE 2022 release meets tomorrow’s business demands.


Start your update to JADE's latest release

RPS datapump automatic retry should handle 3211 errors

Created in response to JADE Contact #68211. Details from this Contact are:


One of our customers experienced an issue yesterday with their production RPS replication, which was triggered in the first instance by an SQL timeout. It appears that the RPS tracking halted (correctly) due to this issue, but then in the first (of 10) automatic retries, a 3211 (SDS tracker thread is busy) exception occurred, causing the datapump to stop, and the automatic retry process was abandoned. The documentation of the 3211 exception says "Wait until the tracker process has completely started or stopped and then retry the operation if it is still required", so we would expect the automatic restart of the RPS datapump to keep retrying, at least for the configured 10 retry attempts.

Manual restart of the datapump some time later worked OK. It would be much better if the automatic restart/retry handled this situation in a more robust manner.

  • Kevin Douglas
  • Apr 20 2021
  • Future consideration
  • Attach files
  • Kevin Douglas commented
    07 Sep 21:33

    Updated to include additional scenario as reported in JADE Contact #70474. In this case, the RPS datapump encountered an SQL Deadlock against a number of SQL queries that were happening at the time, and this caused the datapump to terminate, and a jadserv dump was triggered.

    Logging from jommsg was:


    2025/09/01 15:45:53.482 018b0-01c4 rps: [info] RPS Target Relational DB - SQL operation failed

    2025/09/01 15:45:53.484 018b0-01c4 rps: [info] [Microsoft][SQL Server Native Client 11.0][SQL Server]Transaction (Process ID 61) was deadlocked on lock | generic waitable object resources with another process and has been chosen as the deadlock victim. Rerun the transaction.

    2025/09/01 15:45:53.484 018b0-01c4 rps: [info] SQLGetDiagRec reports SQLState: 40001, Native Error: 1205

    2025/09/01 15:45:53.491 018b0-01c4 JomLog: Unhandled SystemException: RPS Target Relational DB - SQL operation failed, see JadeRpsDataPump.log for details

    2025/09/01 15:45:53.494 018b0-0918 Interpreter: Process [187.3]: clear cache

    2025/09/01 15:45:53.497 018b0-01c4 rps: **** DataPump Exception: Invoking diagnostic process dump *****

    The datapump did not restart in this case either, but manually restarting it worked fine. An option to automatically retry the datapump in cases like this would be great.