/ Check-in [1b215ee3]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Update test command [explain_i] to handle the opcodes used by virtual tables (VNext, VFilter etc.).
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:1b215ee3219750d3beda8f3628c8673efd517061
User & Date: dan 2013-11-12 12:30:09
Context
2013-11-12
14:55
Make sure the count(*) optimization works correctly on WITHOUT ROWID tables. check-in: 91174779 user: drh tags: trunk
12:30
Update test command [explain_i] to handle the opcodes used by virtual tables (VNext, VFilter etc.). check-in: 1b215ee3 user: dan tags: trunk
12:17
Fix for [4065ac8595]: Do not order CROSS or LEFT joins, even if the right-hand-side is a virtual table. check-in: e2684ece user: dan tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to test/tester.tcl.

  1037   1037     #
  1038   1038     set R "\033\[31;1m"        ;# Red fg
  1039   1039     set G "\033\[32;1m"        ;# Green fg
  1040   1040     set B "\033\[34;1m"        ;# Red fg
  1041   1041     set D "\033\[39;0m"        ;# Default fg
  1042   1042     foreach opcode {
  1043   1043         Seek SeekGe SeekGt SeekLe SeekLt NotFound Last Rewind
  1044         -      NoConflict Next Prev
         1044  +      NoConflict Next Prev VNext VPrev VFilter
  1045   1045     } {
  1046   1046       set color($opcode) $B
  1047   1047     }
  1048   1048     foreach opcode {ResultRow} {
  1049   1049       set color($opcode) $G
  1050   1050     }
  1051   1051     foreach opcode {IdxInsert Insert Delete IdxDelete} {
................................................................................
  1058   1058       set op($addr) $opcode
  1059   1059   
  1060   1060       if {$opcode == "Goto" && ($bSeenGoto==0 || ($p2 > $addr+10))} {
  1061   1061         set linebreak($p2) 1
  1062   1062         set bSeenGoto 1
  1063   1063       }
  1064   1064   
  1065         -    if {$opcode == "Next" || $opcode=="Prev"} {
         1065  +    if {$opcode=="Next"  || $opcode=="Prev" 
         1066  +     || $opcode=="VNext" || $opcode=="VPrev"
         1067  +    } {
  1066   1068         for {set i $p2} {$i<$addr} {incr i} {
  1067   1069           incr x($i) 2
  1068   1070         }
  1069   1071       }
  1070   1072   
  1071   1073       if {$opcode == "Goto" && $p2<$addr && $op($p2)=="Yield"} {
  1072   1074         for {set i [expr $p2+1]} {$i<$addr} {incr i} {