sqlite: backport patch to resolve regression in 3.48.0

Unblocks the test suite of nodejs and probably other packages.
This commit is contained in:
Martin Weinelt
2025-02-13 13:50:11 +01:00
parent 7e43cbecfb
commit 74e976c4c6
2 changed files with 21 additions and 0 deletions

View File

@@ -0,0 +1,16 @@
diff --git a/sqlite3.c b/sqlite3.c
index 80433f6..7c234f6 100644
--- a/sqlite3.c
+++ b/sqlite3.c
@@ -231721,6 +231721,11 @@ static int sessionChangesetApply(
}
}
+ {
+ int rc2 = sqlite3_exec(db, "PRAGMA defer_foreign_keys = 0", 0, 0, 0);
+ if( rc==SQLITE_OK ) rc = rc2;
+ }
+
if( (flags & SQLITE_CHANGESETAPPLY_NOSAVEPOINT)==0 ){
if( rc==SQLITE_OK ){
rc = sqlite3_exec(db, "RELEASE changeset_apply", 0, 0, 0);

View File

@@ -34,6 +34,11 @@ stdenv.mkDerivation rec {
# Can be removed with the next release.
# Test: pkgsStatic.gnupg
./Libs.private.patch
# https://sqlite.org/forum/forumpost/00f3aab3d3be9690
# https://sqlite.org/src/info/d7c07581
# TODO: Remove in 3.49.0
./3.48.0-fk-conflict-handling.patch
];
outputs = [ "bin" "dev" "man" "doc" "out" ];