Repository navigation
sqlite: add virtual table support via createModule() #65787
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
Merged
nodejs-github-bot
merged 3 commits into
nodejs:main
from
TrevorBurnham:sqlite-vtab-create-module
Sep 22, 2026
Merged
Changes from 1 commit
Commits
Show all changes
3 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
fixup! sqlite: add virtual table support via createModule()
Address review feedback from trivikr. createModule() re-checks that the database is still open after reading the options bag and the column definitions. A property getter there runs user JavaScript, so close() could release the connection before sqlite3_create_module_v2() received it, and SQLite dereferenced the null handle. Seven other entry points in this file already carry the same re-check, and test-sqlite-options-getter-reentry.js covers the hazard for nine APIs; createModule() was the one that skipped it. xClose no longer calls PropagateJSError when the iterator's return() throws. SQLite discards xClose's return value, so no SQLite error is generated for the suppression flag to consume; it stayed set until the next unrelated statement, where prepare() returned undefined instead of throwing ERR_SQLITE_ERROR. A SQLite error that does follow the cleanup throw now surfaces instead of being suppressed in favor of the JavaScript error. Signed-off-by: Trevor Burnham <trevorburnham@gmail.com> Assisted-by: Claude Opus 5
- Loading branch information
commit f15a71d81fb58fc9273669f1abf372782e38830e
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.