Skip to content

Instantly share code, notes, and snippets.

@benesch
Created July 24, 2020 19:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save benesch/fa0e884118c2081022c45e48cf337ef2 to your computer and use it in GitHub Desktop.
Save benesch/fa0e884118c2081022c45e48cf337ef2 to your computer and use it in GitHub Desktop.
(VALUES (
1 < ALL(SELECT * FROM (VALUES (1)) WHERE false),
1 < ALL(VALUES (0)),
1 < ALL(VALUES (1)),
1 < ALL(VALUES (2)),
1 < ALL(VALUES (0), (NULL)),
1 < ALL(VALUES (1), (NULL)),
1 < ALL(VALUES (2), (NULL)),
NULL < ALL(SELECT * FROM (VALUES (1)) WHERE false),
NULL < ALL(VALUES (0)),
NULL < ALL(VALUES (1)),
NULL < ALL(VALUES (2)),
NULL < ALL(VALUES (NULL)),
NULL < ALL(VALUES (0), (NULL)),
NULL < ALL(VALUES (1), (NULL)),
NULL < ALL(VALUES (2), (NULL))
))
plan:%0 =
| Constant ()
%1 =
| Get %0
%2 =
| Constant
%3 =
| Join %1 %2
| | implementation = Unimplemented
%4 =
| Get %0
%5 =
| Constant ()
%6 =
| Join %4 %5
| | implementation = Unimplemented
%7 =
| Get %6
%8 =
| Constant
%9 =
| Join %7 %8
| | implementation = Unimplemented
%10 =
| Get %6
%11 =
| Constant ()
%12 =
| Join %10 %11
| | implementation = Unimplemented
| Map 1
%13 =
| Union %9 %12
| Filter false
| Filter (!((1 < #0)) || isnull((1 < #0)))
| Distinct group=()
%14 =
| Constant (true)
%15 =
| Join %13 %14
| | implementation = Unimplemented
%16 =
| Get %15
%17 =
| Get %15
| Distinct group=()
| Negate
%18 =
| Get %6
| Distinct group=()
%19 =
| Union %17 %18
%20 =
| Get %6
%21 =
| Join %19 %20
| | implementation = Unimplemented
| Project ()
%22 =
| Constant (false)
%23 =
| Join %21 %22
| | implementation = Unimplemented
%24 =
| Union %16 %23
| Map !(#0)
| Project (#1)
%25 =
| Get %24
%26 =
| Constant
%27 =
| Join %25 %26
| | implementation = Unimplemented
%28 =
| Get %24
%29 =
| Constant ()
%30 =
| Join %28 %29
| | implementation = Unimplemented
| Map 0
%31 =
| Union %27 %30
| Filter (!((1 < #1)) || isnull((1 < #1)))
| Distinct group=(#0)
%32 =
| Constant (true)
%33 =
| Join %31 %32
| | implementation = Unimplemented
%34 =
| Get %33
%35 =
| Get %33
| Distinct group=(#0)
| Negate
%36 =
| Get %24
| Distinct group=(#0)
%37 =
| Union %35 %36
%38 =
| Get %24
%39 =
| Join %37 %38 (= #0 #1)
| | implementation = Unimplemented
| Project (#0)
%40 =
| Constant (false)
%41 =
| Join %39 %40
| | implementation = Unimplemented
%42 =
| Union %34 %41
| Map !(#1)
| Project (#0, #2)
%43 =
| Get %42
%44 =
| Constant
%45 =
| Join %43 %44
| | implementation = Unimplemented
%46 =
| Get %42
%47 =
| Constant ()
%48 =
| Join %46 %47
| | implementation = Unimplemented
| Map 1
%49 =
| Union %45 %48
| Filter (!((1 < #2)) || isnull((1 < #2)))
| Distinct group=(#0, #1)
%50 =
| Constant (true)
%51 =
| Join %49 %50
| | implementation = Unimplemented
%52 =
| Get %51
%53 =
| Get %51
| Distinct group=(#0, #1)
| Negate
%54 =
| Get %42
| Distinct group=(#0, #1)
%55 =
| Union %53 %54
%56 =
| Get %42
%57 =
| Join %55 %56 (= #0 #2) (= #1 #3)
| | implementation = Unimplemented
| Project (#0, #1)
%58 =
| Constant (false)
%59 =
| Join %57 %58
| | implementation = Unimplemented
%60 =
| Union %52 %59
| Map !(#2)
| Project (#0, #1, #3)
%61 =
| Get %60
%62 =
| Constant
%63 =
| Join %61 %62
| | implementation = Unimplemented
%64 =
| Get %60
%65 =
| Constant ()
%66 =
| Join %64 %65
| | implementation = Unimplemented
| Map 2
%67 =
| Union %63 %66
| Filter (!((1 < #3)) || isnull((1 < #3)))
| Distinct group=(#0, #1, #2)
%68 =
| Constant (true)
%69 =
| Join %67 %68
| | implementation = Unimplemented
%70 =
| Get %69
%71 =
| Get %69
| Distinct group=(#0, #1, #2)
| Negate
%72 =
| Get %60
| Distinct group=(#0, #1, #2)
%73 =
| Union %71 %72
%74 =
| Get %60
%75 =
| Join %73 %74 (= #0 #3) (= #1 #4) (= #2 #5)
| | implementation = Unimplemented
| Project (#0..#2)
%76 =
| Constant (false)
%77 =
| Join %75 %76
| | implementation = Unimplemented
%78 =
| Union %70 %77
| Map !(#3)
| Project (#0..#2, #4)
%79 =
| Get %78
%80 =
| Constant
%81 =
| Join %79 %80
| | implementation = Unimplemented
%82 =
| Get %78
%83 =
| Constant ()
%84 =
| Join %82 %83
| | implementation = Unimplemented
| Map 0
%85 =
| Union %81 %84
%86 =
| Get %78
%87 =
| Constant ()
%88 =
| Join %86 %87
| | implementation = Unimplemented
| Map null
%89 =
| Union %85 %88
| Reduce group=(#0, #1, #2, #3) all((1 < #4))
%90 =
| Get %89
%91 =
| Get %89
| Distinct group=(#0, #1, #2, #3)
| Negate
%92 =
| Get %78
| Distinct group=(#0, #1, #2, #3)
%93 =
| Union %91 %92
%94 =
| Get %78
%95 =
| Join %93 %94 (= #0 #4) (= #1 #5) (= #2 #6) (= #3 #7)
| | implementation = Unimplemented
| Project (#0..#3)
%96 =
| Constant (true)
%97 =
| Join %95 %96
| | implementation = Unimplemented
%98 =
| Union %90 %97
%99 =
| Get %98
%100 =
| Get %98
| Distinct group=(#0, #1, #2, #3)
| Negate
%101 =
| Get %78
| Distinct group=(#0, #1, #2, #3)
%102 =
| Union %100 %101
%103 =
| Get %78
%104 =
| Join %102 %103 (= #0 #4) (= #1 #5) (= #2 #6) (= #3 #7)
| | implementation = Unimplemented
| Project (#0..#3)
%105 =
| Constant (null)
%106 =
| Join %104 %105
| | implementation = Unimplemented
%107 =
| Union %99 %106
| Map #4
| Project (#0..#3, #5)
%108 =
| Get %107
%109 =
| Constant
%110 =
| Join %108 %109
| | implementation = Unimplemented
%111 =
| Get %107
%112 =
| Constant ()
%113 =
| Join %111 %112
| | implementation = Unimplemented
| Map 1
%114 =
| Union %110 %113
%115 =
| Get %107
%116 =
| Constant ()
%117 =
| Join %115 %116
| | implementation = Unimplemented
| Map null
%118 =
| Union %114 %117
| Reduce group=(#0, #1, #2, #3, #4) all((1 < #5))
%119 =
| Get %118
%120 =
| Get %118
| Distinct group=(#0, #1, #2, #3, #4)
| Negate
%121 =
| Get %107
| Distinct group=(#0, #1, #2, #3, #4)
%122 =
| Union %120 %121
%123 =
| Get %107
%124 =
| Join %122 %123 (= #0 #5) (= #1 #6) (= #2 #7) (= #3 #8) (= #4 #9)
| | implementation = Unimplemented
| Project (#0..#4)
%125 =
| Constant (true)
%126 =
| Join %124 %125
| | implementation = Unimplemented
%127 =
| Union %119 %126
%128 =
| Get %127
%129 =
| Get %127
| Distinct group=(#0, #1, #2, #3, #4)
| Negate
%130 =
| Get %107
| Distinct group=(#0, #1, #2, #3, #4)
%131 =
| Union %129 %130
%132 =
| Get %107
%133 =
| Join %131 %132 (= #0 #5) (= #1 #6) (= #2 #7) (= #3 #8) (= #4 #9)
| | implementation = Unimplemented
| Project (#0..#4)
%134 =
| Constant (null)
%135 =
| Join %133 %134
| | implementation = Unimplemented
%136 =
| Union %128 %135
| Map #5
| Project (#0..#4, #6)
%137 =
| Get %136
%138 =
| Constant
%139 =
| Join %137 %138
| | implementation = Unimplemented
%140 =
| Get %136
%141 =
| Constant ()
%142 =
| Join %140 %141
| | implementation = Unimplemented
| Map 2
%143 =
| Union %139 %142
%144 =
| Get %136
%145 =
| Constant ()
%146 =
| Join %144 %145
| | implementation = Unimplemented
| Map null
%147 =
| Union %143 %146
| Reduce group=(#0, #1, #2, #3, #4, #5) all((1 < #6))
%148 =
| Get %147
%149 =
| Get %147
| Distinct group=(#0, #1, #2, #3, #4, #5)
| Negate
%150 =
| Get %136
| Distinct group=(#0, #1, #2, #3, #4, #5)
%151 =
| Union %149 %150
%152 =
| Get %136
%153 =
| Join %151 %152 (= #0 #6) (= #1 #7) (= #2 #8) (= #3 #9) (= #4 #10) (= #5 #11)
| | implementation = Unimplemented
| Project (#0..#5)
%154 =
| Constant (true)
%155 =
| Join %153 %154
| | implementation = Unimplemented
%156 =
| Union %148 %155
%157 =
| Get %156
%158 =
| Get %156
| Distinct group=(#0, #1, #2, #3, #4, #5)
| Negate
%159 =
| Get %136
| Distinct group=(#0, #1, #2, #3, #4, #5)
%160 =
| Union %158 %159
%161 =
| Get %136
%162 =
| Join %160 %161 (= #0 #6) (= #1 #7) (= #2 #8) (= #3 #9) (= #4 #10) (= #5 #11)
| | implementation = Unimplemented
| Project (#0..#5)
%163 =
| Constant (null)
%164 =
| Join %162 %163
| | implementation = Unimplemented
%165 =
| Union %157 %164
| Map #6
| Project (#0..#5, #7)
%166 =
| Get %165
%167 =
| Constant
%168 =
| Join %166 %167
| | implementation = Unimplemented
%169 =
| Get %165
%170 =
| Constant ()
%171 =
| Join %169 %170
| | implementation = Unimplemented
| Map 1
%172 =
| Union %168 %171
| Filter false
| Reduce group=(#0, #1, #2, #3, #4, #5, #6) all((null < #7))
%173 =
| Get %172
%174 =
| Get %172
| Distinct group=(#0, #1, #2, #3, #4, #5, #6)
| Negate
%175 =
| Get %165
| Distinct group=(#0, #1, #2, #3, #4, #5, #6)
%176 =
| Union %174 %175
%177 =
| Get %165
%178 =
| Join %176 %177 (= #0 #7) (= #1 #8) (= #2 #9) (= #3 #10) (= #4 #11) (= #5 #12) (= #6 #13)
| | implementation = Unimplemented
| Project (#0..#6)
%179 =
| Constant (true)
%180 =
| Join %178 %179
| | implementation = Unimplemented
%181 =
| Union %173 %180
%182 =
| Get %181
%183 =
| Get %181
| Distinct group=(#0, #1, #2, #3, #4, #5, #6)
| Negate
%184 =
| Get %165
| Distinct group=(#0, #1, #2, #3, #4, #5, #6)
%185 =
| Union %183 %184
%186 =
| Get %165
%187 =
| Join %185 %186 (= #0 #7) (= #1 #8) (= #2 #9) (= #3 #10) (= #4 #11) (= #5 #12) (= #6 #13)
| | implementation = Unimplemented
| Project (#0..#6)
%188 =
| Constant (null)
%189 =
| Join %187 %188
| | implementation = Unimplemented
%190 =
| Union %182 %189
| Map #7
| Project (#0..#6, #8)
%191 =
| Get %190
%192 =
| Constant
%193 =
| Join %191 %192
| | implementation = Unimplemented
%194 =
| Get %190
%195 =
| Constant ()
%196 =
| Join %194 %195
| | implementation = Unimplemented
| Map 0
%197 =
| Union %193 %196
| Reduce group=(#0, #1, #2, #3, #4, #5, #6, #7) all((null < #8))
%198 =
| Get %197
%199 =
| Get %197
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7)
| Negate
%200 =
| Get %190
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7)
%201 =
| Union %199 %200
%202 =
| Get %190
%203 =
| Join %201 %202 (= #0 #8) (= #1 #9) (= #2 #10) (= #3 #11) (= #4 #12) (= #5 #13) (= #6 #14) (= #7 #15)
| | implementation = Unimplemented
| Project (#0..#7)
%204 =
| Constant (true)
%205 =
| Join %203 %204
| | implementation = Unimplemented
%206 =
| Union %198 %205
%207 =
| Get %206
%208 =
| Get %206
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7)
| Negate
%209 =
| Get %190
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7)
%210 =
| Union %208 %209
%211 =
| Get %190
%212 =
| Join %210 %211 (= #0 #8) (= #1 #9) (= #2 #10) (= #3 #11) (= #4 #12) (= #5 #13) (= #6 #14) (= #7 #15)
| | implementation = Unimplemented
| Project (#0..#7)
%213 =
| Constant (null)
%214 =
| Join %212 %213
| | implementation = Unimplemented
%215 =
| Union %207 %214
| Map #8
| Project (#0..#7, #9)
%216 =
| Get %215
%217 =
| Constant
%218 =
| Join %216 %217
| | implementation = Unimplemented
%219 =
| Get %215
%220 =
| Constant ()
%221 =
| Join %219 %220
| | implementation = Unimplemented
| Map 1
%222 =
| Union %218 %221
| Reduce group=(#0, #1, #2, #3, #4, #5, #6, #7, #8) all((null < #9))
%223 =
| Get %222
%224 =
| Get %222
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8)
| Negate
%225 =
| Get %215
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8)
%226 =
| Union %224 %225
%227 =
| Get %215
%228 =
| Join %226 %227 (= #0 #9) (= #1 #10) (= #2 #11) (= #3 #12) (= #4 #13) (= #5 #14) (= #6 #15) (= #7 #16) (= #8 #17)
| | implementation = Unimplemented
| Project (#0..#8)
%229 =
| Constant (true)
%230 =
| Join %228 %229
| | implementation = Unimplemented
%231 =
| Union %223 %230
%232 =
| Get %231
%233 =
| Get %231
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8)
| Negate
%234 =
| Get %215
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8)
%235 =
| Union %233 %234
%236 =
| Get %215
%237 =
| Join %235 %236 (= #0 #9) (= #1 #10) (= #2 #11) (= #3 #12) (= #4 #13) (= #5 #14) (= #6 #15) (= #7 #16) (= #8 #17)
| | implementation = Unimplemented
| Project (#0..#8)
%238 =
| Constant (null)
%239 =
| Join %237 %238
| | implementation = Unimplemented
%240 =
| Union %232 %239
| Map #9
| Project (#0..#8, #10)
%241 =
| Get %240
%242 =
| Constant
%243 =
| Join %241 %242
| | implementation = Unimplemented
%244 =
| Get %240
%245 =
| Constant ()
%246 =
| Join %244 %245
| | implementation = Unimplemented
| Map 2
%247 =
| Union %243 %246
| Reduce group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9) all((null < #10))
%248 =
| Get %247
%249 =
| Get %247
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9)
| Negate
%250 =
| Get %240
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9)
%251 =
| Union %249 %250
%252 =
| Get %240
%253 =
| Join %251 %252 (= #0 #10) (= #1 #11) (= #2 #12) (= #3 #13) (= #4 #14) (= #5 #15) (= #6 #16) (= #7 #17) (= #8 #18) (= #9 #19)
| | implementation = Unimplemented
| Project (#0..#9)
%254 =
| Constant (true)
%255 =
| Join %253 %254
| | implementation = Unimplemented
%256 =
| Union %248 %255
%257 =
| Get %256
%258 =
| Get %256
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9)
| Negate
%259 =
| Get %240
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9)
%260 =
| Union %258 %259
%261 =
| Get %240
%262 =
| Join %260 %261 (= #0 #10) (= #1 #11) (= #2 #12) (= #3 #13) (= #4 #14) (= #5 #15) (= #6 #16) (= #7 #17) (= #8 #18) (= #9 #19)
| | implementation = Unimplemented
| Project (#0..#9)
%263 =
| Constant (null)
%264 =
| Join %262 %263
| | implementation = Unimplemented
%265 =
| Union %257 %264
| Map #10
| Project (#0..#9, #11)
%266 =
| Get %265
%267 =
| Constant
%268 =
| Join %266 %267
| | implementation = Unimplemented
%269 =
| Get %265
%270 =
| Constant ()
%271 =
| Join %269 %270
| | implementation = Unimplemented
| Map null
%272 =
| Union %268 %271
| Reduce group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10) all((null < #11))
%273 =
| Get %272
%274 =
| Get %272
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10)
| Negate
%275 =
| Get %265
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10)
%276 =
| Union %274 %275
%277 =
| Get %265
%278 =
| Join %276 %277 (= #0 #11) (= #1 #12) (= #2 #13) (= #3 #14) (= #4 #15) (= #5 #16) (= #6 #17) (= #7 #18) (= #8 #19) (= #9 #20) (= #10 #21)
| | implementation = Unimplemented
| Project (#0..#10)
%279 =
| Constant (true)
%280 =
| Join %278 %279
| | implementation = Unimplemented
%281 =
| Union %273 %280
%282 =
| Get %281
%283 =
| Get %281
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10)
| Negate
%284 =
| Get %265
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10)
%285 =
| Union %283 %284
%286 =
| Get %265
%287 =
| Join %285 %286 (= #0 #11) (= #1 #12) (= #2 #13) (= #3 #14) (= #4 #15) (= #5 #16) (= #6 #17) (= #7 #18) (= #8 #19) (= #9 #20) (= #10 #21)
| | implementation = Unimplemented
| Project (#0..#10)
%288 =
| Constant (null)
%289 =
| Join %287 %288
| | implementation = Unimplemented
%290 =
| Union %282 %289
| Map #11
| Project (#0..#10, #12)
%291 =
| Get %290
%292 =
| Constant
%293 =
| Join %291 %292
| | implementation = Unimplemented
%294 =
| Get %290
%295 =
| Constant ()
%296 =
| Join %294 %295
| | implementation = Unimplemented
| Map 0
%297 =
| Union %293 %296
%298 =
| Get %290
%299 =
| Constant ()
%300 =
| Join %298 %299
| | implementation = Unimplemented
| Map null
%301 =
| Union %297 %300
| Reduce group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11) all((null < #12))
%302 =
| Get %301
%303 =
| Get %301
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11)
| Negate
%304 =
| Get %290
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11)
%305 =
| Union %303 %304
%306 =
| Get %290
%307 =
| Join %305 %306 (= #0 #12) (= #1 #13) (= #2 #14) (= #3 #15) (= #4 #16) (= #5 #17) (= #6 #18) (= #7 #19) (= #8 #20) (= #9 #21) (= #10 #22) (= #11 #23)
| | implementation = Unimplemented
| Project (#0..#11)
%308 =
| Constant (true)
%309 =
| Join %307 %308
| | implementation = Unimplemented
%310 =
| Union %302 %309
%311 =
| Get %310
%312 =
| Get %310
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11)
| Negate
%313 =
| Get %290
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11)
%314 =
| Union %312 %313
%315 =
| Get %290
%316 =
| Join %314 %315 (= #0 #12) (= #1 #13) (= #2 #14) (= #3 #15) (= #4 #16) (= #5 #17) (= #6 #18) (= #7 #19) (= #8 #20) (= #9 #21) (= #10 #22) (= #11 #23)
| | implementation = Unimplemented
| Project (#0..#11)
%317 =
| Constant (null)
%318 =
| Join %316 %317
| | implementation = Unimplemented
%319 =
| Union %311 %318
| Map #12
| Project (#0..#11, #13)
%320 =
| Get %319
%321 =
| Constant
%322 =
| Join %320 %321
| | implementation = Unimplemented
%323 =
| Get %319
%324 =
| Constant ()
%325 =
| Join %323 %324
| | implementation = Unimplemented
| Map 1
%326 =
| Union %322 %325
%327 =
| Get %319
%328 =
| Constant ()
%329 =
| Join %327 %328
| | implementation = Unimplemented
| Map null
%330 =
| Union %326 %329
| Reduce group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12) all((null < #13))
%331 =
| Get %330
%332 =
| Get %330
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12)
| Negate
%333 =
| Get %319
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12)
%334 =
| Union %332 %333
%335 =
| Get %319
%336 =
| Join %334 %335 (= #0 #13) (= #1 #14) (= #2 #15) (= #3 #16) (= #4 #17) (= #5 #18) (= #6 #19) (= #7 #20) (= #8 #21) (= #9 #22) (= #10 #23) (= #11 #24) (= #12 #25)
| | implementation = Unimplemented
| Project (#0..#12)
%337 =
| Constant (true)
%338 =
| Join %336 %337
| | implementation = Unimplemented
%339 =
| Union %331 %338
%340 =
| Get %339
%341 =
| Get %339
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12)
| Negate
%342 =
| Get %319
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12)
%343 =
| Union %341 %342
%344 =
| Get %319
%345 =
| Join %343 %344 (= #0 #13) (= #1 #14) (= #2 #15) (= #3 #16) (= #4 #17) (= #5 #18) (= #6 #19) (= #7 #20) (= #8 #21) (= #9 #22) (= #10 #23) (= #11 #24) (= #12 #25)
| | implementation = Unimplemented
| Project (#0..#12)
%346 =
| Constant (null)
%347 =
| Join %345 %346
| | implementation = Unimplemented
%348 =
| Union %340 %347
| Map #13
| Project (#0..#12, #14)
%349 =
| Get %348
%350 =
| Constant
%351 =
| Join %349 %350
| | implementation = Unimplemented
%352 =
| Get %348
%353 =
| Constant ()
%354 =
| Join %352 %353
| | implementation = Unimplemented
| Map 2
%355 =
| Union %351 %354
%356 =
| Get %348
%357 =
| Constant ()
%358 =
| Join %356 %357
| | implementation = Unimplemented
| Map null
%359 =
| Union %355 %358
| Reduce group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13) all((null < #14))
%360 =
| Get %359
%361 =
| Get %359
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13)
| Negate
%362 =
| Get %348
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13)
%363 =
| Union %361 %362
%364 =
| Get %348
%365 =
| Join %363 %364 (= #0 #14) (= #1 #15) (= #2 #16) (= #3 #17) (= #4 #18) (= #5 #19) (= #6 #20) (= #7 #21) (= #8 #22) (= #9 #23) (= #10 #24) (= #11 #25) (= #12 #26) (= #13 #27)
| | implementation = Unimplemented
| Project (#0..#13)
%366 =
| Constant (true)
%367 =
| Join %365 %366
| | implementation = Unimplemented
%368 =
| Union %360 %367
%369 =
| Get %368
%370 =
| Get %368
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13)
| Negate
%371 =
| Get %348
| Distinct group=(#0, #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13)
%372 =
| Union %370 %371
%373 =
| Get %348
%374 =
| Join %372 %373 (= #0 #14) (= #1 #15) (= #2 #16) (= #3 #17) (= #4 #18) (= #5 #19) (= #6 #20) (= #7 #21) (= #8 #22) (= #9 #23) (= #10 #24) (= #11 #25) (= #12 #26) (= #13 #27)
| | implementation = Unimplemented
| Project (#0..#13)
%375 =
| Constant (null)
%376 =
| Join %374 %375
| | implementation = Unimplemented
%377 =
| Union %369 %376
| Map #14
| Project (#0..#13, #15)
%378 =
| Union %3 %377
thread '<unnamed>' panicked at 'index out of bounds: the len is 7 but the index is 7', src/transform/src/nonnull_requirements.rs:153:33
stack backtrace:
0: backtrace::backtrace::libunwind::trace
at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86
1: backtrace::backtrace::trace_unsynchronized
at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66
2: std::sys_common::backtrace::_print_fmt
at src/libstd/sys_common/backtrace.rs:78
3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
at src/libstd/sys_common/backtrace.rs:59
4: core::fmt::write
at src/libcore/fmt/mod.rs:1076
5: std::io::Write::write_fmt
at src/libstd/io/mod.rs:1537
6: std::sys_common::backtrace::_print
at src/libstd/sys_common/backtrace.rs:62
7: std::sys_common::backtrace::print
at src/libstd/sys_common/backtrace.rs:49
8: std::panicking::default_hook::{{closure}}
at src/libstd/panicking.rs:198
9: std::panicking::default_hook
at src/libstd/panicking.rs:218
10: <alloc::boxed::Box<F> as core::ops::function::Fn<A>>::call
at /rustc/5c1f21c3b82297671ad3ae1e8c942d2ca92e84f2/src/liballoc/boxed.rs:1090
11: ore::panic::set_abort_on_panic::{{closure}}
at src/ore/src/panic.rs:35
12: std::panicking::rust_panic_with_hook
at src/libstd/panicking.rs:490
13: rust_begin_unwind
at src/libstd/panicking.rs:388
14: core::panicking::panic_fmt
at src/libcore/panicking.rs:101
15: core::panicking::panic_bounds_check
at src/libcore/panicking.rs:73
16: <usize as core::slice::SliceIndex<[T]>>::index
at /rustc/5c1f21c3b82297671ad3ae1e8c942d2ca92e84f2/src/libcore/slice/mod.rs:2872
17: core::slice::<impl core::ops::index::Index<I> for [T]>::index
at /rustc/5c1f21c3b82297671ad3ae1e8c942d2ca92e84f2/src/libcore/slice/mod.rs:2732
18: <alloc::vec::Vec<T> as core::ops::index::Index<I>>::index
at /rustc/5c1f21c3b82297671ad3ae1e8c942d2ca92e84f2/src/liballoc/vec.rs:1942
19: transform::nonnull_requirements::NonNullRequirements::action
at src/transform/src/nonnull_requirements.rs:153
20: transform::nonnull_requirements::NonNullRequirements::action
at src/transform/src/nonnull_requirements.rs:104
21: transform::nonnull_requirements::NonNullRequirements::action
at src/transform/src/nonnull_requirements.rs:76
22: transform::nonnull_requirements::NonNullRequirements::action
at src/transform/src/nonnull_requirements.rs:67
23: transform::nonnull_requirements::NonNullRequirements::action
at src/transform/src/nonnull_requirements.rs:67
24: transform::nonnull_requirements::NonNullRequirements::action
at src/transform/src/nonnull_requirements.rs:67
25: <transform::nonnull_requirements::NonNullRequirements as transform::Transform>::transform
at src/transform/src/nonnull_requirements.rs:40
26: <transform::Fixpoint as transform::Transform>::transform
at src/transform/src/lib.rs:117
27: transform::Optimizer::transform
at src/transform/src/lib.rs:168
28: transform::Optimizer::optimize
at src/transform/src/lib.rs:268
29: coord::coord::Coordinator<C>::sequence_peek
at ./src/coord/src/coord.rs:1318
30: coord::coord::Coordinator<C>::sequence_plan
at ./src/coord/src/coord.rs:829
31: coord::coord::Coordinator<C>::serve_core
at ./src/coord/src/coord.rs:519
32: coord::coord::Coordinator<C>::serve::{{closure}}
at ./src/coord/src/coord.rs:413
33: tokio::runtime::context::enter
at /home/benesch/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.21/src/runtime/context.rs:72
34: tokio::runtime::handle::Handle::enter
at /home/benesch/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.21/src/runtime/handle.rs:76
35: coord::coord::Coordinator<C>::serve
at ./src/coord/src/coord.rs:413
36: sqllogictest::runner::State::start::{{closure}}
at src/sqllogictest/src/runner.rs:398
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Aborted (core dumped)
[~/Sites/materialize/materialize] (decor-experiments *$ u=)
benesch@marmoset$
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment