Devart.Data.Universal.UniException: Input string was not in a correct format.

Discussion of open issues, suggestions and bugs regarding ADO.NET provider for universal data access
Post Reply
rhasse
Posts: 3
Joined: Wed 07 Nov 2018 15:01

Devart.Data.Universal.UniException: Input string was not in a correct format.

Post by rhasse » Wed 07 Nov 2018 15:26

We use Devart Universal 3.70 with one of our products and have a customer reporting this exception when they attempt to connect to one of their databases. Can someone please provide some direction about what connection data could be causing such an exception? The customer suspects the password field but we suspect it may be a different field. We captured some of the connection data in our log:

Creating UniConnection: provider=Oracle;Pooling=True;User Id=*****;Password=*****;Server=10.153.170.125;Connection Timeout=60;Unicode=True;Direct=True;Port=1521;Sid=s1171i2;

We are unable to reproduce this error in our environment so any help about what could cause this exception would be appreciated.

Thanks,

Randall

Pinturiccio
Devart Team
Posts: 2292
Joined: Wed 02 Nov 2011 09:44

Re: Devart.Data.Universal.UniException: Input string was not in a correct format.

Post by Pinturiccio » Mon 12 Nov 2018 16:18

Please provide the following information:
1. Full dotConnect Universal version.
2. Does the error occur when a connection is opened or a command is executed?
3. What is the difference between the applications that you and your user run? Do you connect to the same Oracle server? Do you run the same code?

rhasse
Posts: 3
Joined: Wed 07 Nov 2018 15:01

Re: Devart.Data.Universal.UniException: Input string was not in a correct format.

Post by rhasse » Mon 12 Nov 2018 18:39

Hello,

Here you go.

1) 3.70.1477.0
2) When the connection is opened.
3) No the user is attempting to connect to a different linux Oracle server than we have in our environment. However, we are using the same Oracle version (12.1.0).

Please let us know if you can provide some possible causes of this exception. Thanks!

Pinturiccio
Devart Team
Posts: 2292
Joined: Wed 02 Nov 2011 09:44

Re: Devart.Data.Universal.UniException: Input string was not in a correct format.

Post by Pinturiccio » Tue 13 Nov 2018 14:07

Try performing the following on your client side:
1. Try specifying an IP address instead of a domain name.
2. The default value of the Port connection string parameter is 1521. You have specified this value explicitly. Omit this parameter in the connection string. Does it make any difference?
3. If possible, use the OCI connection mode with Oracle Client on your client side.

rhasse
Posts: 3
Joined: Wed 07 Nov 2018 15:01

Re: Devart.Data.Universal.UniException: Input string was not in a correct format.

Post by rhasse » Wed 05 Dec 2018 22:26

We have some more information about this error. The customer has 2 cases, one that successfully connects, and another that throws this exception. I summarized below. Unfortunately, we have not been able to reproduce this issue in our environment so this is about all the information we have. My main question is: should the Devart driver be able to handle both formats of the TNS redirect command? (see below)

We have a customer that is having an issue connecting to an Oracle RAC system on Linux. They investigated to learn that it seems that the Devart Oracle Universal driver that our product uses, does not seem to be processing a TNS redirect command properly.

Our product sends a 'Request, Connect' TNS packet to the RAC. The RAC then sends back a 'Response, Redirect' packet pointing our product to the node where the database instance lives. In the successful connection, the redirect has this format and the Devart driver seems to follow the redirect to the correct node:

(ADDRESS =(PROTOCOL=TCP)( HOST=x.x.x.x)(PORT=1521)

In the failed connection, the redirect has the below format and the Devart driver does not follow the redirect, we attempt to request data from the original VIP:

(DESCRIPTION=(address=(protocol=tcp)(HOST=x.x.x.x)(port=1521)))

Our current working theory is that the our product could not correctly process or format the second redirect string which results in the driver error message about the formatting.

Please let us know if you have any insight into why the second case fails.

Thanks!

Randall

Post Reply