From: larrybr Date: Wed, 10 Mar 2021 06:06:16 +0000 (+0000) Subject: When shell has no .ar, fake its effect w.r.t. page_size and table creation/filling. X-Git-Tag: version-3.35.0~16 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c5edbd1cf62fe119cb90b00b243d157d690cee78;p=thirdparty%2Fsqlite.git When shell has no .ar, fake its effect w.r.t. page_size and table creation/filling. FossilOrigin-Name: 959f5c65ea14f4716df61e250e9d5a0d69d602a2a973ad22a364e640162c2983 --- diff --git a/manifest b/manifest index 0b5d8aa647..3541aaf6c5 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Add\sappendvfs.c\sto\sthe\sMSVC\smakefile. -D 2021-03-09T23:38:27.366 +C When\sshell\shas\sno\s.ar,\sfake\sits\seffect\sw.r.t.\spage_size\sand\stable\screation/filling. +D 2021-03-10T06:06:16.491 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -699,7 +699,7 @@ F test/autoindex4.test 49d3cd791a9baa16fb461d7ea3de80d019a819cf F test/autoindex5.test a5d72fe8c217cc0ea356dc6fa06a282a8a3fc53aa807709d79dba07a8f248102 F test/autovacuum.test 0831cd34e14695d297187f7f6519265e3121c5b0a1720e548e86829e796129e9 F test/autovacuum_ioerr2.test 8a367b224183ad801e0e24dcb7d1501f45f244b4 -F test/avfs.test dc53cf4cf6bb4d625dc697f09790dfed8cd217a1a4903c1a2a614f6449b2f57d +F test/avfs.test 3069a5c1db3d8c4a97520bf5a285f621f1869f0e78292fba1633dfe5f74397d9 F test/avtrans.test b7dc25459ecbd86c6fa9c606ee3068f59d81e225118617dcf2bbb6ded2ade89e F test/backcompat.test 3e64cedda754c778ef6bbe417b6e7a295e662a4d F test/backup.test dd4a5ff756e3df3931dacb1791db0584d4bad989 @@ -1910,7 +1910,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 9645fe1a050e8b61aea1fba2f142819c387ecb043741392c5719bf7ad303bf8b -R a7e104100d3c650b7d7704b957240448 -U drh -Z 30eda141d16052b31d8fd3fdb55fda28 +P a6681fbb2e0c8d5a7c968f6fd458f61658fad6ac4c7eb8663762b6ac386cdae5 +R c5255ad6d706f59a1204e6271021ef44 +U larrybr +Z 6ffa18aa5b815a92fb54091eda0e7ca8 diff --git a/manifest.uuid b/manifest.uuid index 3c733b0d35..1034326473 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -a6681fbb2e0c8d5a7c968f6fd458f61658fad6ac4c7eb8663762b6ac386cdae5 \ No newline at end of file +959f5c65ea14f4716df61e250e9d5a0d69d602a2a973ad22a364e640162c2983 \ No newline at end of file diff --git a/test/avfs.test b/test/avfs.test index ae96d4da5a..ad43a2b2ac 100644 --- a/test/avfs.test +++ b/test/avfs.test @@ -33,7 +33,7 @@ source $testdir/tester.tcl set ::testprefix avfs set CLI [test_find_cli] db close -forcedelete test.db +# forcedelete test.db load_static_extension db appendvfs @@ -42,6 +42,16 @@ set ::fza avfs.sdb forcedelete $::fa $::fza set ::result {} +proc shellDoesAr {} { + set shdo "sh_app1.sql" + forcedelete $shdo + set fd [open $shdo w] + puts $fd ".help\n.q" + close $fd + set res [catchcmd "-batch -cmd \".read $shdo\""] + return [regexp {^.archive} [lindex $res 1]] +} + set ::vf "&vfs=apndvfs" # Return file offset of appendvfs portion of a file, or {} if none such. @@ -200,12 +210,19 @@ do_test 3.2 { set ::result [join $results " | "] } {ok} +set ::cliDoesAr [shellDoesAr] + do_test 4.1 { set shdo "sh_app1.sql" set shod "sh_app1.adb" forcedelete $shdo $shod set ofd [open $shdo w] - puts $ofd ".ar -c" + if {$::cliDoesAr} { + puts $ofd ".ar -c" + } else { + puts $ofd "pragma page_size=512;" + puts $ofd "create table sqlar (a);" + } puts $ofd ".tables" puts $ofd ".q" close $ofd @@ -223,7 +240,12 @@ do_test 4.2 { set shod "sh_app1.adb" forcedelete $shdo $shod set ofd [open $shdo w] - puts $ofd ".ar -c" + if {$::cliDoesAr} { + puts $ofd ".ar -c" + } else { + puts $ofd "pragma page_size=512;" + puts $ofd "create table sqlar (a);" + } puts $ofd ".tables" puts $ofd ".q" close $ofd @@ -240,8 +262,13 @@ do_test 4.3 { set shod "sh_app1.adb" ; # Same as test 4.2, reusing ADB. forcedelete $shdo set ofd [open $shdo w] - puts $ofd ".ar -u $shdo" - puts $ofd "select count(*) from sqlar where name = '$shdo';" + if {$::cliDoesAr} { + puts $ofd ".ar -u $shdo" + puts $ofd "select count(*) from sqlar where name = '$shdo';" + } else { + puts $ofd "insert into sqlar values (1);" + puts $ofd "select count(*) from sqlar;" + } puts $ofd ".q" close $ofd set res [catchcmd "-append -batch -init $shdo $shod" ""] @@ -296,6 +323,6 @@ do_test 5.2 { forcedelete $::fa $::fza -unset -nocomplain ::fa ::fza ::tlo ::result ::randints +unset -nocomplain ::fa ::fza ::tlo ::result ::randints ::cliDoesAr finish_test