]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Simplify the new syntax to be just "COMMIT AND CONTINUE TRANSACTION". commit-and-begin
authordrh <>
Sat, 16 Nov 2024 14:40:11 +0000 (14:40 +0000)
committerdrh <>
Sat, 16 Nov 2024 14:40:11 +0000 (14:40 +0000)
FossilOrigin-Name: 61797109a2f0fee84bc3e0a0c021544c87e4b985e7e7b549e387e396cf1f86ec

manifest
manifest.uuid
src/parse.y

index 74f0e7e3f4130149d619ad57fe5baa746997f883..7be051625875e8f62e8db4a786387a0f4a18b1e4 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Load\sall\sthe\slatest\strunk\senhancements,\sand\sespecially\sthe\senhancements\sto\nvfstrace,\sinto\sthe\scommit-and-begin\sbranch.
-D 2024-11-15T20:42:12.068
+C Simplify\sthe\snew\ssyntax\sto\sbe\sjust\s"COMMIT\sAND\sCONTINUE\sTRANSACTION".
+D 2024-11-16T14:40:11.304
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d
@@ -763,7 +763,7 @@ F src/os_win.c db4baa8f62bbfe3967c71b008cea31a8f2ff337c1667ff4d8a677e697315ff0d
 F src/os_win.h 7b073010f1451abe501be30d12f6bc599824944a
 F src/pager.c 6d5d8ebe7e0fbaa5ad8c6b327e17271334b99e887b871df667a79b71215acfc7
 F src/pager.h 87f5995a18a11130c52d20c9556da02cdfe40ffd7daaa43ca0fcd922d83b7257
-F src/parse.y 61033fb5fa609161a0025fe7b6941ee5afbf382f6927ea26c51892dd3b63d731
+F src/parse.y f0e72511b10d8456d456706b6e7d1ec68486622f66b5593ac00dff9ee9cd2c99
 F src/pcache.c 588cc3c5ccaaadde689ed35ce5c5c891a1f7b1f4d1f56f6cf0143b74d8ee6484
 F src/pcache.h 1497ce1b823cf00094bb0cf3bac37b345937e6f910890c626b16512316d3abf5
 F src/pcache1.c 49516ad7718a3626f28f710fa7448ef1fce3c07fd169acbb4817341950264319
@@ -2198,8 +2198,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
 F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P a905bd5dd6ccb6f2e5671a5b691e61c853aa425e6a53e7e6b6dbc12e4020ef14 96105d33597765c23dbd490b3aa0c2273731d1970d7041720e9f043dbe3517b3
-R ba1f664b0b08e2a864d62c75331f9173
+P 605889b02122d98011e9a8d458ba01010423680dd69446458ffe7230a1d47937
+R 14eb9d9ad1dcefff4fb094ea7a1cb27f
 U drh
-Z c97cfdf07b76fb16844a6913e2c30105
+Z 7bc09c6cab911404200c67cb0830a94e
 # Remove this line to create a well-formed Fossil manifest.
index 49ab7f308b7199fe1b9d5010137b3f19bf5f0856..a50e0ef8a29f416b1b9fc3c773c7d367d32e1ca8 100644 (file)
@@ -1 +1 @@
-605889b02122d98011e9a8d458ba01010423680dd69446458ffe7230a1d47937
+61797109a2f0fee84bc3e0a0c021544c87e4b985e7e7b549e387e396cf1f86ec
index a063e5ac7e6abc09523d0865e7bb53ecec193b52..abfd2d2b31ebfedf8d3cda40200e1ec47e5b3b51 100644 (file)
@@ -169,8 +169,9 @@ transtype(A) ::= .             {A = TK_DEFERRED;}
 transtype(A) ::= DEFERRED(X).  {A = @X; /*A-overwrites-X*/}
 transtype(A) ::= IMMEDIATE(X). {A = @X; /*A-overwrites-X*/}
 transtype(A) ::= EXCLUSIVE(X). {A = @X; /*A-overwrites-X*/}
-cmd ::= ROLLBACK(X) trans_opt.                {sqlite3EndTransaction(pParse,@X,0);}
-cmd ::= COMMIT|END(X) trans_opt.              {sqlite3EndTransaction(pParse,@X,0);}
+cmd ::= ROLLBACK(X) trans_opt.            {sqlite3EndTransaction(pParse,@X,0);}
+cmd ::= COMMIT(X) trans_opt.              {sqlite3EndTransaction(pParse,@X,0);}
+cmd ::= END(X) trans_opt.                 {sqlite3EndTransaction(pParse,@X,0);}
 // See also the COMMIT AND BEGIN section below
 
 savepoint_opt ::= SAVEPOINT.
@@ -477,8 +478,12 @@ resolvetype(A) ::= REPLACE.                  {A = OE_Replace;}
 
 ////////////////////////// COMMIT AND BEGIN ///////////////////////////////////
 //
-cmd ::= COMMIT|END(X) AND BEGIN transtype(A) trans_opt.
-                                              {sqlite3EndTransaction(pParse,@X,A);}
+cmd ::= COMMIT(X) AND ID(Y) TRANSACTION. {
+  if( Y.n!=8  || sqlite3_strnicmp(Y.z,"continue",8)!=0 ){
+    sqlite3ErrorMsg(pParse, "near \"%T\": syntax error", &Y);
+  }
+  sqlite3EndTransaction(pParse, @X, TK_IMMEDIATE);
+}
 
 ////////////////////////// The DROP TABLE /////////////////////////////////////
 //