I have a test in Jaybird that post multiple events (https://github.com/FirebirdSQL/jaybird/blob/master/src/test/org/firebirdsql/event/TestFBEventManager.java#L173)
Essentially it inserts on multiple threads (100 inserts per thread, 5 threads, a commit after each insert) which causes a trigger to post POST_EVENT 'TEST_EVENT_A' POST_EVENT 'TEST_EVENT_B' POST_EVENT 'TEST_EVENT_A' (yes, it is posting TEST_EVENT_A twice) Which should lead to posting TEST_EVENT_A 1000 times and TEST_EVENT_B 500 times. This test occasionally fails (about 1 in 3 runs on Firebird 3). I initially thought I wasn't waiting long enough for all events to be received. After adding some extra debug logging, it looks like Firebird is occasionally losing event registrations (not posting them, but the event is unregistered), or posting an event with the id of TEST_EVENT_A, but posting the count of TEST_EVENT_B (or vice versa), but both events are unregistered, which seems to indicate some sort of race condition or interleaved writes of the event. I can reproduce this problem both with Jaybird 2.2 and Jaybird 3, which have a totally different implementations. As far as I can tell it is not version specific, but it is more easily reproducible on Firebird 3 and 4 (probably because I'm using SuperServer). Could someone take a look at this? Mark -- Mark Rotteveel ------------------------------------------------------------------------------ Developer Access Program for Intel Xeon Phi Processors Access to Intel Xeon Phi processor-based developer platforms. With one year of Intel Parallel Studio XE. Training and support from Colfax. Order your platform today. http://sdm.link/xeonphi Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel