Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JNI events, spurious callbacks can trigger access violations + incomplete cleanup [JDBC398] #440

Closed
firebird-automations opened this issue May 16, 2015 · 4 comments

Comments

@firebird-automations
Copy link

Submitted by: @mrotteveel

With Firebird 3.0.0.31839 fbclient spurious callbacks can occur (see CORE4795). In the current implementation these spurious callbacks will cause the deletion of the JNI globalrefs to the eventhandler and the eventhandle. On subsequent invocation of the callback this can (and eventually: will) cause an access violation (0xc0000005).

Although CORE4795 needs to be fixed, the Jaybird code should ignore these spurious callbacks.

It also looks like the current cleanup depends on the callback being invoked after cancellation, which might not actually occur (eg if the event is cancelled when none is queued). The cleanup of the eventstruct and its global refs should be an explicit step as part of the event cancellation.

Commits: efadd3f ba88c5f

@firebird-automations
Copy link
Author

Modified by: @mrotteveel

Fix Version: Jaybird 2.2.8 [ 10664 ]

@firebird-automations
Copy link
Author

Modified by: @mrotteveel

priority: Blocker [ 1 ] => Critical [ 2 ]

Fix Version: Jaybird 2.2.9 [ 10691 ]

Fix Version: Jaybird 2.2.8 [ 10664 ] =>

@firebird-automations
Copy link
Author

Commented by: @mrotteveel

Decided to drop this, as it leads to complications with the existing code.

@firebird-automations
Copy link
Author

Modified by: @mrotteveel

status: Open [ 1 ] => Closed [ 6 ]

resolution: Won't Fix [ 2 ]

Fix Version: Jaybird 2.2.9 [ 10691 ] =>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment