You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Event cancellation with fbclient 3.0.0.31839 has a deadlock. cancelEvent obtains a lock on the eventhandle, the native call to isc_cancel_events triggers the callback on a separate thread, this callback also attempts to obtain a lock on the eventhandle. It looks like isc_cancel_events won't return until the callback is done so it won't release the lock.
Removing the synchronization in the callback fixes the problem, but investigation is needed to see if a more fine-grained form of locking is needed.
Removed synchronization on the event handle. Made the callback synchronize on itself since it is possible that two callbacks are triggered at once (see also JDBC398 and CORE4795). No further synchronization is needed, as the other parts needing the buffer are not called at the time when the event is queued.
Submitted by: @mrotteveel
Event cancellation with fbclient 3.0.0.31839 has a deadlock. cancelEvent obtains a lock on the eventhandle, the native call to isc_cancel_events triggers the callback on a separate thread, this callback also attempts to obtain a lock on the eventhandle. It looks like isc_cancel_events won't return until the callback is done so it won't release the lock.
Removing the synchronization in the callback fixes the problem, but investigation is needed to see if a more fine-grained form of locking is needed.
Commits: a4e0dae
The text was updated successfully, but these errors were encountered: