these days I got an error ORA-25412 "transaction replay disabled by call to OCIStmtPrepare" from one of our customers.
The customer changed to ORACLE 12C R2 some weeks ago.
Some research led me to the change log of ORACLE 12c R2, where it reads:
see https://docs.oracle.com/en/database/ora ... 1185D79360The following function is deprecated beginning with Oracle 12c Release 2 (12.2.0.1): OCIStmtPrepare().
Oracle strongly encourages use of OCIStmtPrepare2() in all OCI applications instead of the deprecated call OCIStmtPrepare().
Use the OCIStmtPrepare2() call to support the use of Application Continuity in an HA infrastructure. Applications that use OCIStmtPrepare() return the following error: Error - ORA-25412: transaction replay disabled by call to OCIStmtPrepare.
Are you aware of this fact and consider it in the development of ODAC?
Since more and more customers are planning to change to ORACLE 12c R2 in the near future I'm seriously concerned, that we could see this error message quite often in the future, and this would be a really great problem.
Are there any flags, options or variables we can set to force ODAC to use OCIStmtPrepare2() instead of OCIStmtPrepare()?
Are there any workarounds, config options or insights you could give me to avoid this problem?
I'm hopefully awaiting your answer ;-)
With regards,
Stefan "ostijo" Grosskreutz