By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
444,120 Members | 1,799 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 444,120 IT Pros & Developers. It's quick & easy.

Distributed transactions and Oracle RAC load balancing problems - advice needed!

P: n/a
During deployment of an application using distributed transactions managed
under COM+ on an Oracle 9i RAC database, we encounter situations where the
load balancing mechanisms in the RAC result in that the component context in
the distributed transaction (in our case two different COM components)
cannot hold onto the same ODBC connection. Or it may be that the database
session is changed dynamically for the ODBC connection, so that component 2
in the transaction cannot read updates made by component 1 in the
transaction.

Originally we use MS ODBC driver for Oracle (2.573.9030.00) , and Oracle XA
(9.2.0.1.0). We have investigated Oracle's ODBC driver (9.02.00) ,
EasySoft's ODBC driver and DataDirect's ODBC driver to find if any of these
can ensure that the same session is held for the connection during the
entire lifetime of the transaction. It seems that BEA with WebLogic has
solved the solution with their JDBC connection pool configuration (parameter
KeepXAConnTillTXComplete).

Has anyone else run into this problem and found a solution or work-around?
According to Oracle's promo documents no application changes should be
needed for using the RAC option.

Br,

Eirik
Jul 19 '05 #1
Share this Question
Share on Google+
1 Reply


P: n/a
Eirik Tryggeseth wrote:
During deployment of an application using distributed transactions managed
under COM+ on an Oracle 9i RAC database, we encounter situations where the
load balancing mechanisms in the RAC result in that the component context
in the distributed transaction (in our case two different COM components)
cannot hold onto the same ODBC connection. Or it may be that the database
session is changed dynamically for the ODBC connection, so that component
2 in the transaction cannot read updates made by component 1 in the
transaction.

Originally we use MS ODBC driver for Oracle (2.573.9030.00) , and Oracle
XA
(9.2.0.1.0). We have investigated Oracle's ODBC driver (9.02.00) ,
EasySoft's ODBC driver and DataDirect's ODBC driver to find if any of
these can ensure that the same session is held for the connection during
the entire lifetime of the transaction. It seems that BEA with WebLogic
has solved the solution with their JDBC connection pool configuration
(parameter KeepXAConnTillTXComplete).

Has anyone else run into this problem and found a solution or work-around?
According to Oracle's promo documents no application changes should be
needed for using the RAC option.


My God, you didn't actually *believe* those promo documents, did you?????!

Sorry, but that's just a bit naiive.

ODBC does not failover properly in a RAC environment without a lot of
handholding, at least in my (somewhat limited, admittedly) experience.
Meaning that the very idea of running an ODBC app on RAC is... well, the
word "brave" comes to mind.

So... good luck, basically. I hope you get the technical help you need from
elsewhere on this group, but I wouldn't be holding my breath.

Regards
HJR

Jul 19 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.