]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
New requirement marks.
authordrh <>
Tue, 10 May 2022 18:43:54 +0000 (18:43 +0000)
committerdrh <>
Tue, 10 May 2022 18:43:54 +0000 (18:43 +0000)
FossilOrigin-Name: e8479e56c615a6eb38b58e6d360bea8528ec14a9d7b0798b95d3eb513bd08f0f

manifest
manifest.uuid
test/join.test
test/join8.test
test/vtab6.test

index 6bb848b2c2d8eaa45d433e69fe0e5ad941305092..70c67e0168a5c576c762d37ddfe0a2b1c720d2c8 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sa\sstale\srequirement\smark.
-D 2022-05-10T18:18:45.504
+C New\srequirement\smarks.
+D 2022-05-10T18:43:54.263
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -1141,14 +1141,14 @@ F test/ioerr4.test f130fe9e71008577b342b8874d52984bd04ede2c
 F test/ioerr5.test 2edfa4fb0f896f733071303b42224df8bedd9da4
 F test/ioerr6.test a395a6ab144b26a9e3e21059a1ab6a7149cca65b
 F test/istrue.test e7f285bb70282625c258e866ce6337d4c762922f5a300e1b50f958aef6e7d9c9
-F test/join.test e5f165dfd84fd46406ddae6614b0122c3bfa23a26ef62966442e1503c40d96aa
+F test/join.test edeaff6edc1c1a2bcfebee343744e04d000f861c3d67cb653114f88565f8c955
 F test/join2.test 466b07233820f5deee66a6c3bf6e4500c8bbf7b83649e67606f5f649c07928c0
 F test/join3.test 6f0c774ff1ba0489e6c88a3e77b9d3528fb4fda0
 F test/join4.test 1a352e4e267114444c29266ce79e941af5885916
 F test/join5.test d22b6cba8fb59ab3f1c82701434c360705eb12d4ce200c449f37b018fc47681a
 F test/join6.test f809c025fa253f9e150c0e9afd4cef8813257bceeb6f46e04041228c9403cc2c
 F test/join7.test 8e72de4b45e5e930d18c305c7efe86015fb2552731e4e03ea226353036b0dab0
-F test/join8.test 68f5ec206cd88610c19ab8edb4789a174a55cdb1732619a95db8fd33dbb13783
+F test/join8.test fef259c42d56bbe150b777726b185b0bc060d4290daf9f879abc68321f8ad6db
 F test/join9.test 9056ddd3b0c0f4f9d658f4521038d9a37dc23ead8ca9a505d0b0db2b6a471e05
 F test/joinA.test 7eab225dc1c1ab258a5e62513a4ed7cabbd3db971d59d5d92f4fb6fa14c12f6a
 F test/joinB.test 1b2ba3fc8568b49411787fccbf540570c148e9b6a53a30f80691cb6268098ded
@@ -1719,7 +1719,7 @@ F test/vtab2.test 14d4ab26cee13ba6cf5c5601b158e4f57552d3b055cdd9406cf7f711e9c840
 F test/vtab3.test b45f47d20f225ccc9c28dc915d92740c2dee311e
 F test/vtab4.test 8e73ed268f3d596bc3590f45fc948fb40f28e9c3
 F test/vtab5.test 889f444970393c73f1e077e2bdc5d845e157a391
-F test/vtab6.test fa609a4af96da30beceefa3cb624abe9be38c4747ab373d98179b24027d6b798
+F test/vtab6.test 2525a2fe2e44ccbed1d758cb2977fb8ab8f07d5312ed8d8799d3529647d11f2f
 F test/vtab7.test 70c6f4a1d6177144a8236e4172d5fba92e683440374664ad1f04851fbb335d3c
 F test/vtab8.test e19fa4a538fcd1bb66c22825fa8f71618fb13583
 F test/vtab9.test ea58d2b95d61955f87226381716b2d0b1d4e4f9b
@@ -1953,9 +1953,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 8f9355028bc7baeeb10ee9a5e29f093adac6c2f149596dec0be827be4ce491cb
-Q +3eda4030f73384abf18b97cd8a4606e10b23e382d1b72dff7526aebfde23e0af
-R ad1a743739340ac35d67b569c30d27a5
+P fcda7fb1f184a31a67572aae15f3cdcd60f8aac199106a7b0f90aca251ca7017
+R 696e923f15f9da5ccd48142298e15665
 U drh
-Z a581d18ac49ad52a81b01edb2bbc696b
+Z 324ce18ac7f904101887dd5ff565ea9a
 # Remove this line to create a well-formed Fossil manifest.
index 5e403d2fa46bfa28c52a07aecb9cd3a22214c587..de6635c4e1a474cca77e9d08d9d5b331bafc9895 100644 (file)
@@ -1 +1 @@
-fcda7fb1f184a31a67572aae15f3cdcd60f8aac199106a7b0f90aca251ca7017
\ No newline at end of file
+e8479e56c615a6eb38b58e6d360bea8528ec14a9d7b0798b95d3eb513bd08f0f
\ No newline at end of file
index 38cfb745694e89b8721d6437f2eda7b4480718dd..09ede1a4af872cf083f273aebb14ad66c7a57854 100644 (file)
@@ -250,6 +250,19 @@ do_test join-2.1 {
   }
 } {1 2 3 4 2 3 4 5 3 4 5 {}}
 
+# EVIDENCE-OF: R-52129-05406 you can say things like "OUTER LEFT NATURAL
+# JOIN" which means the same as "NATURAL LEFT OUTER JOIN".
+do_test join-2.1b {
+  execsql {
+    SELECT * FROM t1 OUTER LEFT NATURAL JOIN t2;
+  }
+} {1 2 3 4 2 3 4 5 3 4 5 {}}
+do_test join-2.1c {
+  execsql {
+    SELECT * FROM t1 NATURAL LEFT OUTER JOIN t2;
+  }
+} {1 2 3 4 2 3 4 5 3 4 5 {}}
+
 # ticket #3522
 do_test join-2.1.1 {
   execsql2 {
@@ -328,6 +341,9 @@ do_test join-3.6 {
     SELECT * FROM t1 JOIN t2 ON t3.a=t2.b;
   }
 } {1 {no such column: t3.a}}
+
+# EVIDENCE-OF: R-47973-48020 you cannot say "INNER OUTER JOIN", because
+# that would be contradictory.
 do_test join-3.7 {
   catchsql {
     SELECT * FROM t1 INNER OUTER JOIN t2;
index 3a3b06a1c411577b0a99b6752e5cec3d61a8bae7..ab0572291206af3b9db70fd4713d673581e687ec 100644 (file)
@@ -20,6 +20,8 @@ ifcapable !vtab {
 }
 
 db null NULL
+# EVIDENCE-OF: R-33754-02880 you can say "LEFT RIGHT JOIN" which is the
+# same as "FULL JOIN".
 do_execsql_test join8-10 {
   CREATE TABLE t1(a,b,c);
   CREATE TABLE t2(x,y);
@@ -226,6 +228,27 @@ do_execsql_test join8-7010 {
   -    -    -    -    -  -    -  -  305   5
   -    -    -    -    -  -    -  -  310  10
 }
+
+# EVIDENCE-OF: R-33754-02880 you can say "LEFT RIGHT JOIN" which is the
+# same as "FULL JOIN".
+do_execsql_test join8-7011 {
+  WITH t0 AS MATERIALIZED (
+    SELECT t1.*, t2.*, t3.*
+      FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
+        RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
+  )
+  SELECT * FROM t0 LEFT RIGHT JOIN t4 ON t0.a=t4.d AND t4.z>0
+   ORDER BY coalesce(t0.a, t0.y+200, t4.d);
+} {
+  6  106  206  306  106  6  206  6    -   -
+  -    -    -    -    -  -  200  0    -   -
+  -    -    -    -    -  -  203  3    -   -
+  -    -    -    -    -  -  209  9    -   -
+  -    -    -    -    -  -    -  -  300   0
+  -    -    -    -    -  -    -  -  305   5
+  -    -    -    -    -  -    -  -  310  10
+}
+
 do_execsql_test join8-7020 {
   EXPLAIN QUERY PLAN
   WITH t0 AS MATERIALIZED (
index 2ee5e27051e9ce2803fb0b859a4225830543ef7d..1c220e11fe87ed079be1de9806bf162eaa587504 100644 (file)
@@ -277,11 +277,15 @@ do_test vtab6-3.6 {
     SELECT * FROM t1 JOIN t2 ON t3.a=t2.b;
   }
 } {1 {no such column: t3.a}}
+
+# EVIDENCE-OF: R-47973-48020 you cannot say "INNER OUTER JOIN", because
+# that would be contradictory.
 do_test vtab6-3.7 {
   catchsql {
     SELECT * FROM t1 INNER OUTER JOIN t2;
   }
 } {1 {unknown join type: INNER OUTER}}
+
 do_test vtab6-3.7 {
   catchsql {
     SELECT * FROM t1 LEFT BOGUS JOIN t2;