Skip to content

Couple Thick/Thin mode to the Connection, not the Application #518

@mkmoisen

Description

@mkmoisen

Today, an application is either in thick mode or in thin mode. All connections within the application must be one or the other.

I have a case where I would like to run a single application that uses thick mode for certain schema/databases, while using thin mode for other schema/databases.

Is this a feasible change, or would it be a large burden?


I have an application that connects to dozens of schemas across dozens of Oracle databases. Some of these schemas/dbs are very old are are using a password verifier that is not supported by Thin Mode. It unfortunately is challenging to work with the owners of the schemas and the DBAs to simply reset the passwords. In addition I would like to be able to use QCN for just one table, which is not supported in thin mode.

You might argue that I should just use thick mode. However, I have found thin mode to be preferable in a number of cases. For example AQ in thick mode seems to have an issue where if the session disconnects, the python thread is never notified and doesn't fail with an exception, it will just hang forever. This problem does not exist in thin mode. The workaround is to not use wait forever, and instead wait for ~30 minutes and then reconnect; however to me this somewhat defeats the purpose of using AQ which is to have threads that only wake up when they need to do work. And in general I have noticed a modest performance improvement by switching to thin mode.

So it would be nice in my case to be able to create a connection (or pool) in either thin or thick mode, instead of having a global thick or thin mode for the entire application.

Thank you.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions