I have a completely unclear picture regarding connection polling in our .NET service, which connects to SQL anywhere 16 through OdbcConnection class (c#).
First of all, the service is getting a lot of Failed to connect to DB errors and I believe that one of the issues here is that it is not using a connection pool of the ODBC driver.
Main question: how to recognize a polled connection from Sybase central connection tab (or from a sa_conn_info() view, I am not picky on the tool)?
My second question: Can ODBC driver pool connections which connect to the same DB, but do not have identical connection strings. This particular service assigns CON and THREAD values to the connection string before calling CreateConnection() function, so almost all connection string are different.
My third question: Is connection id of the db connection changes after being reused by connection poll cache? So, if the client queries the polled connection info, will it see the same connection id on multiple occurrences?
You can see the condition of the connection pooling from the database properties.
(ConnPoolCachedCount, ConnPoolHits, ConnPoolMisses)
For details, please see below.
"Database Properties window: Extended Information tab"
Connection pooling needs the same connection parameter.
Accordingly, I think that your service doesn't use the connection pooling.
I believe that the connection id doesn't change while the connection is pooling.
Connection pooling of SA16 has some issues.
I will recommend that apply the latest EBF.