]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Small performance optimization in the resolver. empty-table-optimizations
authordrh <>
Mon, 7 Jul 2025 19:03:50 +0000 (19:03 +0000)
committerdrh <>
Mon, 7 Jul 2025 19:03:50 +0000 (19:03 +0000)
FossilOrigin-Name: 840646df0696706bd4dd7a04dfc8b16ad80c24cbcbc57a22c9e65a93cc17af2b

manifest
manifest.uuid
src/resolve.c

index 974b081ab2ae473dbbfed8900ad2a02be59fd8e9..7ead8c518157c01472c2f5c8e7b671ffc4569d7b 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Merge\sthe\slatest\strunk\s\senhancements\sand\sfixes\sinto\sthe\sempty-table-optimizations\sbranch.
-D 2025-07-07T18:35:51.568
+C Small\sperformance\soptimization\sin\sthe\sresolver.
+D 2025-07-07T19:03:50.925
 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@ -783,7 +783,7 @@ F src/pragma.c 30b535d0a66348df844ee36f890617b4cf45e9a22dcbc47ec3ca92909c50aaf1
 F src/prepare.c 1832be043fce7d489959aae6f994c452d023914714c4d5457beaed51c0f3d126
 F src/printf.c 71b6d3a0093bf23f473e25480ca0024e8962681506c75f4ffd3d343a3f0ab113
 F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c
-F src/resolve.c 5b14cad58bc21341fbaea76d7e781187559627a461745ece00c2655ba7c083ec
+F src/resolve.c d3ee7ed308d46f4ee6d3bb6316d8d6f87158f93a7fd616732138cc953cf364f0
 F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97
 F src/select.c b1d4e1f21a32b4f33d3bf02c4167ac8da5aafb97210a0b13a9119d68183db37d
 F src/shell.c.in 73c0eeb7c265d59b99219d5aa055f412f07842088d8036b6d259927d85dd1bbf
@@ -2211,8 +2211,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
 F tool/warnings.sh 1ad0169b022b280bcaaf94a7fa231591be96b514230ab5c98fbf15cd7df842dd
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P 6b1ecbaa2ee405be040901dceac45d027d35c313622748ba4dbbd404e297a7fa 28db0d152d90fb5e62d03ea5caceabe8901be98522aef3dc2b54564fbc35355d
-R 1ad2faf618cb852b453d45306c55c408
+P f15cdf07573c05276a13885d74bae21a93544766344f19ef939b7a69edd1073b
+R 2636d63ee0b11ec41a4803b9ba60214d
 U drh
-Z 725feec2e2e8168094856eb7acaf31d4
+Z f0a94ad32bbc71db6c95d4953159e88b
 # Remove this line to create a well-formed Fossil manifest.
index f4fafa7e7b1037e6da93e3b1de02fb5c489415a7..0533abe09dfd2110bfa3df794de94512399dd0b5 100644 (file)
@@ -1 +1 @@
-f15cdf07573c05276a13885d74bae21a93544766344f19ef939b7a69edd1073b
+840646df0696706bd4dd7a04dfc8b16ad80c24cbcbc57a22c9e65a93cc17af2b
index bbd1021e0b4a77446559f9ee9aece82f29eb677a..57ccd0c07a54f50feed856de0ec3e53c5f476398 100644 (file)
@@ -1359,9 +1359,6 @@ static int resolveExprStep(Walker *pWalker, Expr *pExpr){
     }
 #ifndef SQLITE_OMIT_SUBQUERY
     case TK_EXISTS:
-      assert( ExprUseXSelect(pExpr) );
-      pParse->bHasExists = 1;
-      /* no break */ deliberate_fall_through
     case TK_SELECT:
 #endif
     case TK_IN: {
@@ -1375,6 +1372,7 @@ static int resolveExprStep(Walker *pWalker, Expr *pExpr){
         testcase( pNC->ncFlags & NC_IdxExpr );
         testcase( pNC->ncFlags & NC_GenCol );
         assert( pExpr->x.pSelect );
+        if( pExpr->op==TK_EXISTS )  pParse->bHasExists = 1;
         if( pNC->ncFlags & NC_SelfRef ){
           notValidImpl(pParse, pNC, "subqueries", pExpr, pExpr);
         }else{