[odb-users] Mutex may not be released Re: It was blocked by odb::sqlite::connection_pool_factory::create()

Boris Kolpackov boris at codesynthesis.com
Tue Jul 2 08:55:46 EDT 2024


Sunny Sun <sunny.sun at ringcentral.com> writes:

> Yes, we really got win32_exception() when call odb::sqlite::connection().
>
> [...]
> 
> The above code throw win32_exception(), but not sure which line throw it.
> We got 2 times win32_exception().
> 
> [...]
> 
> This issue only happened once, and we did not find out the root cause.
> 
> We only find this issue same began with the win32_exception().

It's hard to know what could be causing this without at least knowing
where the exception is thrown. I looked at all the throw sites and all
of them related to the Win32 thread synchronization primitives so it
is very strange.

One thing you can try is to update to the latest 2.5.0 pre-release
(which is currently at the release candidate stage). In 2.5.0 we have
switched to C++11 threading API so maybe that will help. For
instructions on how to build ODB 2.5.0, see:

https://codesynthesis.com/products/odb/doc/install-build2.xhtml

The latest status update for this release is here:

https://codesynthesis.com/pipermail/odb-users/2024-June/005009.html



More information about the odb-users mailing list