We are using Devart.data.oracle.dll version 8.5.506. When we tried to use machine name (in ipv6 network) in the ConnectionString of OracleConnection object, and then make the call to OracleConnection.Open() method, we got the following Exception.
We are running OracleConnection.Open() on a remote machine (different from cpo-ipv6-t3 here).
EXCEPTION (Devart.Data.Oracle.OracleException): Network error:: 10057 - A request to send or receive data was disallowed because the socket is not connected and (when sending on a datagram socket using a sendto call) no address was supplied
Host = cpo-ipv6-t3
Port = 1521
Stack Trace: at Devart.Data.Oracle.cb.a(String A_0, String A_1, String A_2, String A_3)
at Devart.Data.Oracle.dg.a(s A_0, Boolean A_1)
at Devart.Data.Oracle.dg.a(s A_0, p A_1)
at Devart.Data.Oracle.OracleInternalConnection..ctor(s connectionOptions, OracleInternalConnection proxyConnection)
at Devart.Data.Oracle.ay.a(ab A_0, Object A_1, DbConnectionBase A_2)
at Devart.Common.DbConnectionFactory.a(DbConnectionPool A_0, ab A_1, DbConnectionBase A_2)
at Devart.Common.DbConnectionPool.a(DbConnectionBase A_0)
at Devart.Common.DbConnectionPool.GetObject(DbConnectionBase owningConnection)
at Devart.Common.DbConnectionFactory.b(DbConnectionBase A_0)
at Devart.Common.DbConnectionClosed.Open(DbConnectionBase outerConnection)
at Devart.Common.DbConnectionBase.Open()
at Devart.Data.Oracle.OracleConnection.Open()
The ConnectionString in this situation looks like this "Data Source= cpo-ipv6-t3;SID=abcv;Port=1521;Unicode=true;User ID=xxxx;Password=xxxx;Direct=true;". Note that I hid the User ID and password information.
This is a pure ipv6 network. The IP address of cpo-ipv6-t3 is 2001:420:1402:2028::1b. I have tried the following:
1. If I make Data Source=2001:420:1402:2028::1b in the ConnectionString, then Devart.Data.Oracle.OracleConnection.Open() works.
2. We tried TOAD in a remote machine to access the oracle DB on cpo-ipv6-t3 , and it works when we use cpo-ipv6-t3 in TOAD. So our ipv6 network is fine in machine name resolution. i.e. no issues in DNS.
Looks like there is a bug in Devart.data.oracle.dll when specifying machine name in a ipv6 network. Somehow the Devart code still goes to ipv4 function Oracle.cb.a(String A_0, String A_1, String A_2, String A_3). If this is the case, when can you fix this bug?
Bug in OracleConnection.Open() when use mahicne name in ipv6 network
-
- Devart Team
- Posts: 2420
- Joined: Wed 02 Nov 2011 09:44
Re: Bug in OracleConnection.Open() when use mahicne name in ipv6 network
We have reproduced and fixed the bug with a connection via DNS name in the IPv6 network in the Direct mode. We will post here when the corresponding build of dotConnect for Oracle is available for download.
Re: Bug in OracleConnection.Open() when use mahicne name in ipv6 network
Any estimate on when can we get the build with the fix?
-
- Devart Team
- Posts: 2420
- Joined: Wed 02 Nov 2011 09:44
Re: Bug in OracleConnection.Open() when use mahicne name in ipv6 network
We are planning to release the next public build of dotConnect for Oracle at the end of the week. We will post here when the corresponding build of dotConnect for Oracle is available for download.
-
- Devart Team
- Posts: 2420
- Joined: Wed 02 Nov 2011 09:44
Re: Bug in OracleConnection.Open() when use mahicne name in ipv6 network
New build of dotConnect for Oracle 8.5.535 is available for download!
It can be downloaded from http://www.devart.com/dotconnect/oracle/download.html (trial version) or from Registered Users' Area (for users with valid subscription only).
For more information, please refer to http://forums.devart.com/viewtopic.php?t=32778
It can be downloaded from http://www.devart.com/dotconnect/oracle/download.html (trial version) or from Registered Users' Area (for users with valid subscription only).
For more information, please refer to http://forums.devart.com/viewtopic.php?t=32778