0

Good day, can anyone please help me with my problem?

I have this program that uses QLOLEDB (also tried using the MSOLEDBSQL) to connect to local sql server express 2014 (ver 12.0.2). The program always create 2 connections, one for IDBCreateCommand and one for iOpenRowset which is used for fastload. The programs is functioning well but it keeps on creating RING_BUFFER_CONNECTIVITY LoginTimers logs in sys.dm_os_ring_buffers when I try to release the database connections. No error were created in SQL server logs.

Using the SQL profiler, I am able to know that the logging of RING_BUFFER_CONNECTIVITY happens during Audit Logout of the database connection, though I have 2 connections, only one of them is creating the RING_BUFFER_CONNECTIVITY log and it only happens when releasing connections that were not use (does not matter if it is using IDBCreateCommand or iOpenRowset). Using connections for running SQL query will not log RING_BUFFER_CONNECTIVITY when they are released.

The issue is also happening in MS SQL server 2016 express (ver 13.0.4001) but not in MS SQL server 2012 express(ver 11.0.5058), I am really running out of idea what is causing this. Is there some added feature in SQL server 2014 and later versions that warns user of unnecessary database connections that were created? Like connections that were created but not even use? (I tried proving this by creating database connections using MS SQL management studio then closing it afterwards and it does not create a RING_BUFFER_CONNECTIVITY log... but looking at the sessions created using OLEDB and MS SQL management studio in sys.dm_exec_sessions.. sessions created using OLEDB has memory_usage = 0, while the latter has memory_usage = 3).

What am I missing? Any help is greatly appreciated..

Below is the sample record created in sys.dm_os_ring_buffers: ring_buffer_connectivity Thank you

  • Do you have any logic you can share that shows how the code looks that builds the connection string which you are using when this occurs? I'd be curious to see what the logic behind the scenes looks like that creates these two connections as well. Consider an edit and including some of that detail to help draw as clear a picture as possible. You mention that there's no problem with this same logic against SQL 2012 but '14 and '16 it is, and thus makes understanding some of that even more important in my opinion. – Pimp Juice IT Jan 18 at 2:22
  • Ralph - Also, look over this script while troubleshooting.... mssqlwiki.com/tag/ring_buffer_connectivity – Pimp Juice IT Jan 18 at 2:29
  • working on a similar issue and it looks to be two processes taking the same SPID at the same time. going to take me a few more days to figure it out and i'm thinking the root cause won't be on the SQL server – Alen Apr 17 at 19:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.