Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Side by Side Diff: third_party/sqlite/src/test/recover.test

Issue 1671773003: [sqlite] Fix bug in how recover virtual table handles empty. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # 2012 January 11 {} 1 # 2012 January 11 {}
2 # 2 #
3 # The author disclaims copyright to this source code. In place of 3 # The author disclaims copyright to this source code. In place of
4 # a legal notice, here is a blessing: 4 # a legal notice, here is a blessing:
5 # 5 #
6 # May you do good and not evil. 6 # May you do good and not evil.
7 # May you find forgiveness for yourself and forgive others. 7 # May you find forgiveness for yourself and forgive others.
8 # May you share freely, never taking more than you give. 8 # May you share freely, never taking more than you give.
9 # 9 #
10 #*********************************************************************** 10 #***********************************************************************
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
103 DROP TABLE IF EXISTS temp.leaf_recover; 103 DROP TABLE IF EXISTS temp.leaf_recover;
104 CREATE VIRTUAL TABLE temp.leaf_recover USING recover( 104 CREATE VIRTUAL TABLE temp.leaf_recover USING recover(
105 leaf, 105 leaf,
106 t TEXT, 106 t TEXT,
107 n INTEGER 107 n INTEGER
108 ); 108 );
109 } 109 }
110 execsql {SELECT t, n FROM leaf_recover ORDER BY rowid} 110 execsql {SELECT t, n FROM leaf_recover ORDER BY rowid}
111 } {{Leaf-node-generating line 0} 0 {Leaf-node-generating line 1} 1 {Leaf-node-ge nerating line 2} 2 {Leaf-node-generating line 3} 3 {Leaf-node-generating line 4} 4 {Leaf-node-generating line 5} 5 {Leaf-node-generating line 6} 6 {Leaf-node-ge nerating line 7} 7 {Leaf-node-generating line 8} 8 {Leaf-node-generating line 9} 9} 111 } {{Leaf-node-generating line 0} 0 {Leaf-node-generating line 1} 1 {Leaf-node-ge nerating line 2} 2 {Leaf-node-generating line 3} 3 {Leaf-node-generating line 4} 4 {Leaf-node-generating line 5} 5 {Leaf-node-generating line 6} 6 {Leaf-node-ge nerating line 7} 7 {Leaf-node-generating line 8} 8 {Leaf-node-generating line 9} 9}
112 112
113 # Empty table gives empty results.
114 do_test recover-leaf-2.0 {
115 db close
116 sqlite3 db test.db
117 generate "empty" "Leaf-node-generating line " 0
118
119 db eval {
120 DROP TABLE IF EXISTS temp.leaf_recover;
121 CREATE VIRTUAL TABLE temp.leaf_recover USING recover(
122 empty,
123 t TEXT,
124 n INTEGER
125 );
126 }
127 execsql {SELECT t, n FROM leaf_recover ORDER BY rowid}
128 } {}
129
113 # Single level of interior node. 130 # Single level of interior node.
114 do_test recover-interior-1.0 { 131 do_test recover-interior-1.0 {
115 db close 132 db close
116 sqlite3 db test.db 133 sqlite3 db test.db
117 generate "interior" "Interior-node-generating line " 100 134 generate "interior" "Interior-node-generating line " 100
118 135
119 db eval { 136 db eval {
120 DROP TABLE IF EXISTS temp.interior_recover; 137 DROP TABLE IF EXISTS temp.interior_recover;
121 CREATE VIRTUAL TABLE temp.interior_recover USING recover( 138 CREATE VIRTUAL TABLE temp.interior_recover USING recover(
122 interior, 139 interior,
(...skipping 15 matching lines...) Expand all
138 CREATE VIRTUAL TABLE temp.interior2_recover USING recover( 155 CREATE VIRTUAL TABLE temp.interior2_recover USING recover(
139 interior2, 156 interior2,
140 t TEXT, 157 t TEXT,
141 n INTEGER 158 n INTEGER
142 ); 159 );
143 } 160 }
144 execsql {SELECT t, n FROM interior2_recover WHERE (rowid%500)=0 ORDER BY rowid } 161 execsql {SELECT t, n FROM interior2_recover WHERE (rowid%500)=0 ORDER BY rowid }
145 } {{Interior-node-generating line 499} 499 {Interior-node-generating line 999} 9 99 {Interior-node-generating line 1499} 1499 {Interior-node-generating line 1999 } 1999 {Interior-node-generating line 2499} 2499 {Interior-node-generating line 2999} 2999 {Interior-node-generating line 3499} 3499 {Interior-node-generating l ine 3999} 3999 {Interior-node-generating line 4499} 4499 {Interior-node-generati ng line 4999} 4999} 162 } {{Interior-node-generating line 499} 499 {Interior-node-generating line 999} 9 99 {Interior-node-generating line 1499} 1499 {Interior-node-generating line 1999 } 1999 {Interior-node-generating line 2499} 2499 {Interior-node-generating line 2999} 2999 {Interior-node-generating line 3499} 3499 {Interior-node-generating l ine 3999} 3999 {Interior-node-generating line 4499} 4499 {Interior-node-generati ng line 4999} 4999}
146 163
147 finish_test 164 finish_test
OLDNEW
« third_party/sqlite/src/src/recover.c ('K') | « third_party/sqlite/src/src/recover.c ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698