I have SQL Dev 3.2.2 (32-bit) with the supplied JDK running on windows, in work and is rolled out to a large number of PCs. Sometimes we can have 10 users running SQL Developer against our 11.2 Database. But sometimes we can have 100 users using SQL Developer at the same time. They have all set up their connections to use the jdbc driver.
An error that has been occurring is that it SQL Developer is dropping connections to the database. The users get windows popping up that says
“Your Database Connection has been reset. Any pending transactions or session state has been lost.”
This typically happens when a user clicks to expand one of the objects under their schema in the Connections pane.
After searching and searching and a bit more searching it seem that this is being caused by and Out of Bands (OOB) error in the jdbc driver or on the network. Our DB is set to be dedicated (not shared) so that is not what is causing the issue. So after all my searching, if the following statement is added to the sqldeveloper.conf file then SQL Developer should ignore the OOB errors.
AddVMOption -Doracle.net.disableOob=true
What is really annoying about this error message is that this config file change seems to have worked for some users but for other users it has not. They are still getting their connections dropped when using SQL Developer, either while they are using their worksheets or when they click to expand/open a schema object.
Our next test is to roll out Oracle Client on the PCs and then get the users to connect to their schemas using the Oracle Client networking and a TNS entry.
Will this work? Will this make the error go away? Is there a problem with using the jdbc connection? Is it picking up another jdbc driver on the PC? Is it a bug in SQL Developer? Will using Oracle TNS work? Is it a problem on the Server? Is it a problem with the Database (no errors are being reported)?
Lots of questions that need answering.
If you can answer some of these then let me know.
If/When I find out I will update this blog post.