An oracle bug discovered by using dblink in XA, xadblink
A new error message was found in the recent monitoring system logs, which is strange and has not been found before. As follows:
ORA-24777: do not allow use of database links that are not portable.
The tracing program finds that a remote database table is queried through dblink, And the XA distributed transaction database connection is used. We may all know that XA has many restrictions and has been around before. However, I have not adjusted the program or changed the dblink configuration recently. Why? You can only search online. Some people have encountered the result, saying that oracle dblink is changed to shared. I personally think this statement is reliable. So now I tried it on the test system, and it worked.
But why is there no such problem? Ask the application service maintenance personnel and dba. The application server administrator will return a message later without changing any settings. Then the dba replied to the external oracle expert after consultation, which was caused by an oracle bug. Currently, this problem exists in oracle 11.2.0.4 (we recently migrated the remote data server we accessed, the minor version of oracle is upgraded during migration, and the version is 11.2.0.4 after the upgrade), and our access object is the dblink of 11.2.0.4. In the past, we just stepped on the thunder. The other party provides two solutions:
1. Set the oracle server mode to shared server;
2. Set the dblink connection to the shared mode.
Obviously, no one chooses the first option easily, and the impact may be too great. Other problems may occur. The second option has a low cost and has little impact on the system itself. Therefore, solution 2 is selected.
Of course, you can find a time to Upgrade oracle and install patches.