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

Segfault when engine is shutting down inside blob get/put function invoked from UDF [CORE4121] #4449

Closed
firebird-issue-importer opened this issue Jun 18, 2013 · 5 comments

Comments

@firebird-issue-importer

Submitted by: @AlexPeshkoff

UDFs work with blobs calling functions passed in blobcallback structure. When exception happens inside such function it is thrown passing module bondaries. This may work if both UDF and engine use exactly same execptions handling, but in general case this is a serious bug.

Commits: 75a9613 e85e525 FirebirdSQL/fbt-repository@de00f50 FirebirdSQL/fbt-repository@8ab95e5

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 18, 2013

Modified by: @AlexPeshkoff

assignee: Alexander Peshkov [ alexpeshkoff ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 18, 2013

Commented by: @AlexPeshkoff

Correct solution is to use UDR instead UDF - they do work correctly with exceptions. A fix for UDF is to catch exception in blobcallback function, store it in tdbb and re-raise after UDF completion.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 18, 2013

Modified by: @AlexPeshkoff

status: Open [ 1 ] => Resolved [ 5 ]

resolution: Fixed [ 1 ]

Fix Version: 3.0 Alpha 1 [ 10331 ]

Fix Version: 2.5.3 [ 10461 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jul 12, 2015

Modified by: @pavel-zotov

status: Resolved [ 5 ] => Resolved [ 5 ]

QA Status: Cannot be tested

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Sep 22, 2015

Modified by: @pcisar

status: Resolved [ 5 ] => Closed [ 6 ]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants