Changeset: e560e7db1f91 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e560e7db1f91
Modified Files:
        
sql/test/BugTracker-2008/Tests/count_with_order_by_and_limit_crashes.SF-2229936.stable.err
        
sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out.single
        sql/test/SQLancer/Tests/sqlancer04.stable.err
        sql/test/SQLancer/Tests/sqlancer05.sql
        sql/test/SQLancer/Tests/sqlancer05.stable.err
        sql/test/SQLancer/Tests/sqlancer05.stable.out
        sql/test/miscellaneous/Tests/groupby_expressions.stable.err
Branch: Oct2020
Log Message:

Approved output, although we should change this error message, it can be 
confusing


diffs (truncated from 916 to 300 lines):

diff --git 
a/sql/test/BugTracker-2008/Tests/count_with_order_by_and_limit_crashes.SF-2229936.stable.err
 
b/sql/test/BugTracker-2008/Tests/count_with_order_by_and_limit_crashes.SF-2229936.stable.err
--- 
a/sql/test/BugTracker-2008/Tests/count_with_order_by_and_limit_crashes.SF-2229936.stable.err
+++ 
b/sql/test/BugTracker-2008/Tests/count_with_order_by_and_limit_crashes.SF-2229936.stable.err
@@ -84,7 +84,7 @@ stderr of test 'count_with_order_by_and_
 
 MAPI  = (monetdb) /var/tmp/mtest-27483/.s.monetdb.35395
 QUERY = select count(subtotal) from bigramlex order by subtotal;
-ERROR = !SELECT: cannot use non GROUP BY column 'subtotal' in query results 
without an aggregate function
+ERROR = !SELECT: identifier 'subtotal' unknown
 CODE  = 42000
 
 # 18:44:11 >  
diff --git 
a/sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out.single
 
b/sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out.single
--- 
a/sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out.single
+++ 
b/sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out.single
@@ -42,470 +42,334 @@ function user.main():void;
     X_61:bat[:timestamp] := 
batmtime.timestamp_add_msec_interval(X_45:bat[:timestamp], -28800000:lng);
     X_64:bat[:timestamp] := algebra.projection(C_58:bat[:oid], 
X_61:bat[:timestamp]);
     X_65:bat[:timestamp] := bat.replace(X_56:bat[:timestamp], C_58:bat[:oid], 
X_64:bat[:timestamp], true:bit);
-    X_66:bat[:bit] := batcalc.not(X_51:bat[:bit]);
-    X_69:bat[:bit] := batcalc.isnil(X_51:bat[:bit]);
-    X_71:bat[:bit] := batcalc.or(X_66:bat[:bit], X_69:bat[:bit]);
-    C_75:bat[:oid] := algebra.thetaselect(X_71:bat[:bit], true:bit, "==":str);
-    X_80:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2000-04-02 
10:00:00.000000":timestamp, "2000-10-29 09:00:00.000000":timestamp, 
C_75:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_82:bat[:oid] := algebra.thetaselect(X_80:bat[:bit], true:bit, "==":str);
-    C_83:bat[:oid] := algebra.projection(C_82:bat[:oid], C_75:bat[:oid]);
-    X_86:bat[:timestamp] := 
batmtime.timestamp_add_msec_interval(X_45:bat[:timestamp], -25200000:lng);
-    X_87:bat[:timestamp] := algebra.projection(C_83:bat[:oid], 
X_86:bat[:timestamp]);
-    X_88:bat[:timestamp] := bat.replace(X_65:bat[:timestamp], C_83:bat[:oid], 
X_87:bat[:timestamp], true:bit);
-    X_89:bat[:bit] := batcalc.not(X_80:bat[:bit]);
-    X_90:bat[:bit] := batcalc.isnil(X_80:bat[:bit]);
-    X_91:bat[:bit] := batcalc.or(X_89:bat[:bit], X_90:bat[:bit]);
-    C_93:bat[:oid] := algebra.thetaselect(X_91:bat[:bit], true:bit, "==":str);
-    C_94:bat[:oid] := algebra.projection(C_93:bat[:oid], C_75:bat[:oid]);
-    X_99:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2000-10-29 
09:00:00.000000":timestamp, "2001-04-01 10:00:00.000000":timestamp, 
C_94:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_103:bat[:oid] := algebra.thetaselect(X_99:bat[:bit], true:bit, "==":str);
-    C_104:bat[:oid] := algebra.projection(C_103:bat[:oid], C_94:bat[:oid]);
-    X_110:bat[:timestamp] := algebra.projection(C_104:bat[:oid], 
X_61:bat[:timestamp]);
-    X_111:bat[:timestamp] := bat.replace(X_88:bat[:timestamp], 
C_104:bat[:oid], X_110:bat[:timestamp], true:bit);
-    X_113:bat[:bit] := batcalc.not(X_99:bat[:bit]);
-    X_116:bat[:bit] := batcalc.isnil(X_99:bat[:bit]);
-    X_118:bat[:bit] := batcalc.or(X_113:bat[:bit], X_116:bat[:bit]);
-    C_121:bat[:oid] := algebra.thetaselect(X_118:bat[:bit], true:bit, 
"==":str);
-    C_123:bat[:oid] := algebra.projection(C_121:bat[:oid], C_94:bat[:oid]);
-    X_127:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2001-04-01 
10:00:00.000000":timestamp, "2001-10-28 09:00:00.000000":timestamp, 
C_123:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_129:bat[:oid] := algebra.thetaselect(X_127:bat[:bit], true:bit, 
"==":str);
-    C_130:bat[:oid] := algebra.projection(C_129:bat[:oid], C_123:bat[:oid]);
-    X_134:bat[:timestamp] := algebra.projection(C_130:bat[:oid], 
X_86:bat[:timestamp]);
-    X_135:bat[:timestamp] := bat.replace(X_111:bat[:timestamp], 
C_130:bat[:oid], X_134:bat[:timestamp], true:bit);
-    X_136:bat[:bit] := batcalc.not(X_127:bat[:bit]);
-    X_137:bat[:bit] := batcalc.isnil(X_127:bat[:bit]);
-    X_138:bat[:bit] := batcalc.or(X_136:bat[:bit], X_137:bat[:bit]);
-    C_140:bat[:oid] := algebra.thetaselect(X_138:bat[:bit], true:bit, 
"==":str);
-    C_141:bat[:oid] := algebra.projection(C_140:bat[:oid], C_123:bat[:oid]);
-    X_146:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2001-10-28 
09:00:00.000000":timestamp, "2002-04-07 10:00:00.000000":timestamp, 
C_141:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_150:bat[:oid] := algebra.thetaselect(X_146:bat[:bit], true:bit, 
"==":str);
-    C_151:bat[:oid] := algebra.projection(C_150:bat[:oid], C_141:bat[:oid]);
-    X_157:bat[:timestamp] := algebra.projection(C_151:bat[:oid], 
X_61:bat[:timestamp]);
-    X_158:bat[:timestamp] := bat.replace(X_135:bat[:timestamp], 
C_151:bat[:oid], X_157:bat[:timestamp], true:bit);
-    X_159:bat[:bit] := batcalc.not(X_146:bat[:bit]);
-    X_162:bat[:bit] := batcalc.isnil(X_146:bat[:bit]);
-    X_164:bat[:bit] := batcalc.or(X_159:bat[:bit], X_162:bat[:bit]);
-    C_167:bat[:oid] := algebra.thetaselect(X_164:bat[:bit], true:bit, 
"==":str);
-    C_169:bat[:oid] := algebra.projection(C_167:bat[:oid], C_141:bat[:oid]);
-    X_173:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2002-04-07 
10:00:00.000000":timestamp, "2002-10-27 09:00:00.000000":timestamp, 
C_169:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_175:bat[:oid] := algebra.thetaselect(X_173:bat[:bit], true:bit, 
"==":str);
-    C_176:bat[:oid] := algebra.projection(C_175:bat[:oid], C_169:bat[:oid]);
-    X_180:bat[:timestamp] := algebra.projection(C_176:bat[:oid], 
X_86:bat[:timestamp]);
-    X_181:bat[:timestamp] := bat.replace(X_158:bat[:timestamp], 
C_176:bat[:oid], X_180:bat[:timestamp], true:bit);
-    X_183:bat[:bit] := batcalc.not(X_173:bat[:bit]);
-    X_184:bat[:bit] := batcalc.isnil(X_173:bat[:bit]);
-    X_185:bat[:bit] := batcalc.or(X_183:bat[:bit], X_184:bat[:bit]);
-    C_187:bat[:oid] := algebra.thetaselect(X_185:bat[:bit], true:bit, 
"==":str);
-    C_188:bat[:oid] := algebra.projection(C_187:bat[:oid], C_169:bat[:oid]);
-    X_193:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2002-10-27 
09:00:00.000000":timestamp, "2003-04-06 10:00:00.000000":timestamp, 
C_188:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_197:bat[:oid] := algebra.thetaselect(X_193:bat[:bit], true:bit, 
"==":str);
-    C_198:bat[:oid] := algebra.projection(C_197:bat[:oid], C_188:bat[:oid]);
-    X_204:bat[:timestamp] := algebra.projection(C_198:bat[:oid], 
X_61:bat[:timestamp]);
-    X_205:bat[:timestamp] := bat.replace(X_181:bat[:timestamp], 
C_198:bat[:oid], X_204:bat[:timestamp], true:bit);
-    X_206:bat[:bit] := batcalc.not(X_193:bat[:bit]);
-    X_209:bat[:bit] := batcalc.isnil(X_193:bat[:bit]);
-    X_211:bat[:bit] := batcalc.or(X_206:bat[:bit], X_209:bat[:bit]);
-    C_214:bat[:oid] := algebra.thetaselect(X_211:bat[:bit], true:bit, 
"==":str);
-    C_216:bat[:oid] := algebra.projection(C_214:bat[:oid], C_188:bat[:oid]);
-    X_220:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2003-04-06 
10:00:00.000000":timestamp, "2003-10-26 09:00:00.000000":timestamp, 
C_216:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_223:bat[:oid] := algebra.thetaselect(X_220:bat[:bit], true:bit, 
"==":str);
-    C_224:bat[:oid] := algebra.projection(C_223:bat[:oid], C_216:bat[:oid]);
-    X_228:bat[:timestamp] := algebra.projection(C_224:bat[:oid], 
X_86:bat[:timestamp]);
-    X_229:bat[:timestamp] := bat.replace(X_205:bat[:timestamp], 
C_224:bat[:oid], X_228:bat[:timestamp], true:bit);
-    X_230:bat[:bit] := batcalc.not(X_220:bat[:bit]);
-    X_231:bat[:bit] := batcalc.isnil(X_220:bat[:bit]);
-    X_232:bat[:bit] := batcalc.or(X_230:bat[:bit], X_231:bat[:bit]);
-    C_234:bat[:oid] := algebra.thetaselect(X_232:bat[:bit], true:bit, 
"==":str);
-    C_235:bat[:oid] := algebra.projection(C_234:bat[:oid], C_216:bat[:oid]);
-    X_240:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2003-10-26 
09:00:00.000000":timestamp, "2004-04-04 10:00:00.000000":timestamp, 
C_235:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_244:bat[:oid] := algebra.thetaselect(X_240:bat[:bit], true:bit, 
"==":str);
-    C_245:bat[:oid] := algebra.projection(C_244:bat[:oid], C_235:bat[:oid]);
-    X_251:bat[:timestamp] := algebra.projection(C_245:bat[:oid], 
X_61:bat[:timestamp]);
-    X_252:bat[:timestamp] := bat.replace(X_229:bat[:timestamp], 
C_245:bat[:oid], X_251:bat[:timestamp], true:bit);
-    X_253:bat[:bit] := batcalc.not(X_240:bat[:bit]);
-    X_256:bat[:bit] := batcalc.isnil(X_240:bat[:bit]);
-    X_258:bat[:bit] := batcalc.or(X_253:bat[:bit], X_256:bat[:bit]);
-    C_262:bat[:oid] := algebra.thetaselect(X_258:bat[:bit], true:bit, 
"==":str);
-    C_264:bat[:oid] := algebra.projection(C_262:bat[:oid], C_235:bat[:oid]);
-    X_268:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2004-04-04 
10:00:00.000000":timestamp, "2004-10-31 09:00:00.000000":timestamp, 
C_264:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_270:bat[:oid] := algebra.thetaselect(X_268:bat[:bit], true:bit, 
"==":str);
-    C_271:bat[:oid] := algebra.projection(C_270:bat[:oid], C_264:bat[:oid]);
-    X_275:bat[:timestamp] := algebra.projection(C_271:bat[:oid], 
X_86:bat[:timestamp]);
-    X_276:bat[:timestamp] := bat.replace(X_252:bat[:timestamp], 
C_271:bat[:oid], X_275:bat[:timestamp], true:bit);
-    X_277:bat[:bit] := batcalc.not(X_268:bat[:bit]);
-    X_278:bat[:bit] := batcalc.isnil(X_268:bat[:bit]);
-    X_279:bat[:bit] := batcalc.or(X_277:bat[:bit], X_278:bat[:bit]);
-    C_281:bat[:oid] := algebra.thetaselect(X_279:bat[:bit], true:bit, 
"==":str);
-    C_282:bat[:oid] := algebra.projection(C_281:bat[:oid], C_264:bat[:oid]);
-    X_287:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2004-10-31 
09:00:00.000000":timestamp, "2005-04-03 10:00:00.000000":timestamp, 
C_282:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_291:bat[:oid] := algebra.thetaselect(X_287:bat[:bit], true:bit, 
"==":str);
-    C_292:bat[:oid] := algebra.projection(C_291:bat[:oid], C_282:bat[:oid]);
-    X_298:bat[:timestamp] := algebra.projection(C_292:bat[:oid], 
X_61:bat[:timestamp]);
-    X_299:bat[:timestamp] := bat.replace(X_276:bat[:timestamp], 
C_292:bat[:oid], X_298:bat[:timestamp], true:bit);
-    X_301:bat[:bit] := batcalc.not(X_287:bat[:bit]);
-    X_304:bat[:bit] := batcalc.isnil(X_287:bat[:bit]);
-    X_306:bat[:bit] := batcalc.or(X_301:bat[:bit], X_304:bat[:bit]);
-    C_309:bat[:oid] := algebra.thetaselect(X_306:bat[:bit], true:bit, 
"==":str);
-    C_311:bat[:oid] := algebra.projection(C_309:bat[:oid], C_282:bat[:oid]);
-    X_315:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2005-04-03 
10:00:00.000000":timestamp, "2005-10-30 09:00:00.000000":timestamp, 
C_311:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_317:bat[:oid] := algebra.thetaselect(X_315:bat[:bit], true:bit, 
"==":str);
-    C_318:bat[:oid] := algebra.projection(C_317:bat[:oid], C_311:bat[:oid]);
-    X_322:bat[:timestamp] := algebra.projection(C_318:bat[:oid], 
X_86:bat[:timestamp]);
-    X_323:bat[:timestamp] := bat.replace(X_299:bat[:timestamp], 
C_318:bat[:oid], X_322:bat[:timestamp], true:bit);
-    X_324:bat[:bit] := batcalc.not(X_315:bat[:bit]);
-    X_325:bat[:bit] := batcalc.isnil(X_315:bat[:bit]);
-    X_326:bat[:bit] := batcalc.or(X_324:bat[:bit], X_325:bat[:bit]);
-    C_328:bat[:oid] := algebra.thetaselect(X_326:bat[:bit], true:bit, 
"==":str);
-    C_329:bat[:oid] := algebra.projection(C_328:bat[:oid], C_311:bat[:oid]);
-    X_334:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2005-10-30 
09:00:00.000000":timestamp, "2006-04-02 10:00:00.000000":timestamp, 
C_329:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_338:bat[:oid] := algebra.thetaselect(X_334:bat[:bit], true:bit, 
"==":str);
-    C_339:bat[:oid] := algebra.projection(C_338:bat[:oid], C_329:bat[:oid]);
-    X_345:bat[:timestamp] := algebra.projection(C_339:bat[:oid], 
X_61:bat[:timestamp]);
-    X_346:bat[:timestamp] := bat.replace(X_323:bat[:timestamp], 
C_339:bat[:oid], X_345:bat[:timestamp], true:bit);
-    X_347:bat[:bit] := batcalc.not(X_334:bat[:bit]);
-    X_350:bat[:bit] := batcalc.isnil(X_334:bat[:bit]);
-    X_352:bat[:bit] := batcalc.or(X_347:bat[:bit], X_350:bat[:bit]);
-    C_355:bat[:oid] := algebra.thetaselect(X_352:bat[:bit], true:bit, 
"==":str);
-    C_357:bat[:oid] := algebra.projection(C_355:bat[:oid], C_329:bat[:oid]);
-    X_361:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2006-04-02 
10:00:00.000000":timestamp, "2006-10-29 09:00:00.000000":timestamp, 
C_357:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_363:bat[:oid] := algebra.thetaselect(X_361:bat[:bit], true:bit, 
"==":str);
-    C_364:bat[:oid] := algebra.projection(C_363:bat[:oid], C_357:bat[:oid]);
-    X_368:bat[:timestamp] := algebra.projection(C_364:bat[:oid], 
X_86:bat[:timestamp]);
-    X_369:bat[:timestamp] := bat.replace(X_346:bat[:timestamp], 
C_364:bat[:oid], X_368:bat[:timestamp], true:bit);
-    X_371:bat[:bit] := batcalc.not(X_361:bat[:bit]);
-    X_372:bat[:bit] := batcalc.isnil(X_361:bat[:bit]);
-    X_373:bat[:bit] := batcalc.or(X_371:bat[:bit], X_372:bat[:bit]);
-    C_375:bat[:oid] := algebra.thetaselect(X_373:bat[:bit], true:bit, 
"==":str);
-    C_376:bat[:oid] := algebra.projection(C_375:bat[:oid], C_357:bat[:oid]);
-    X_381:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2006-10-29 
09:00:00.000000":timestamp, "2007-03-11 10:00:00.000000":timestamp, 
C_376:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_385:bat[:oid] := algebra.thetaselect(X_381:bat[:bit], true:bit, 
"==":str);
-    C_386:bat[:oid] := algebra.projection(C_385:bat[:oid], C_376:bat[:oid]);
-    X_392:bat[:timestamp] := algebra.projection(C_386:bat[:oid], 
X_61:bat[:timestamp]);
-    X_393:bat[:timestamp] := bat.replace(X_369:bat[:timestamp], 
C_386:bat[:oid], X_392:bat[:timestamp], true:bit);
-    X_394:bat[:bit] := batcalc.not(X_381:bat[:bit]);
-    X_397:bat[:bit] := batcalc.isnil(X_381:bat[:bit]);
-    X_399:bat[:bit] := batcalc.or(X_394:bat[:bit], X_397:bat[:bit]);
-    C_402:bat[:oid] := algebra.thetaselect(X_399:bat[:bit], true:bit, 
"==":str);
-    C_404:bat[:oid] := algebra.projection(C_402:bat[:oid], C_376:bat[:oid]);
-    X_408:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2007-03-11 
10:00:00.000000":timestamp, "2007-11-04 09:00:00.000000":timestamp, 
C_404:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_411:bat[:oid] := algebra.thetaselect(X_408:bat[:bit], true:bit, 
"==":str);
-    C_412:bat[:oid] := algebra.projection(C_411:bat[:oid], C_404:bat[:oid]);
-    X_416:bat[:timestamp] := algebra.projection(C_412:bat[:oid], 
X_86:bat[:timestamp]);
-    X_417:bat[:timestamp] := bat.replace(X_393:bat[:timestamp], 
C_412:bat[:oid], X_416:bat[:timestamp], true:bit);
-    X_418:bat[:bit] := batcalc.not(X_408:bat[:bit]);
-    X_419:bat[:bit] := batcalc.isnil(X_408:bat[:bit]);
-    X_420:bat[:bit] := batcalc.or(X_418:bat[:bit], X_419:bat[:bit]);
-    C_422:bat[:oid] := algebra.thetaselect(X_420:bat[:bit], true:bit, 
"==":str);
-    C_423:bat[:oid] := algebra.projection(C_422:bat[:oid], C_404:bat[:oid]);
-    X_428:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2007-11-04 
09:00:00.000000":timestamp, "2008-03-09 10:00:00.000000":timestamp, 
C_423:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_432:bat[:oid] := algebra.thetaselect(X_428:bat[:bit], true:bit, 
"==":str);
-    C_433:bat[:oid] := algebra.projection(C_432:bat[:oid], C_423:bat[:oid]);
-    X_439:bat[:timestamp] := algebra.projection(C_433:bat[:oid], 
X_61:bat[:timestamp]);
-    X_440:bat[:timestamp] := bat.replace(X_417:bat[:timestamp], 
C_433:bat[:oid], X_439:bat[:timestamp], true:bit);
-    X_441:bat[:bit] := batcalc.not(X_428:bat[:bit]);
-    X_444:bat[:bit] := batcalc.isnil(X_428:bat[:bit]);
-    X_446:bat[:bit] := batcalc.or(X_441:bat[:bit], X_444:bat[:bit]);
-    C_450:bat[:oid] := algebra.thetaselect(X_446:bat[:bit], true:bit, 
"==":str);
-    C_452:bat[:oid] := algebra.projection(C_450:bat[:oid], C_423:bat[:oid]);
-    X_456:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2008-03-09 
10:00:00.000000":timestamp, "2008-11-02 09:00:00.000000":timestamp, 
C_452:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_458:bat[:oid] := algebra.thetaselect(X_456:bat[:bit], true:bit, 
"==":str);
-    C_459:bat[:oid] := algebra.projection(C_458:bat[:oid], C_452:bat[:oid]);
-    X_463:bat[:timestamp] := algebra.projection(C_459:bat[:oid], 
X_86:bat[:timestamp]);
-    X_464:bat[:timestamp] := bat.replace(X_440:bat[:timestamp], 
C_459:bat[:oid], X_463:bat[:timestamp], true:bit);
-    X_465:bat[:bit] := batcalc.not(X_456:bat[:bit]);
-    X_466:bat[:bit] := batcalc.isnil(X_456:bat[:bit]);
-    X_467:bat[:bit] := batcalc.or(X_465:bat[:bit], X_466:bat[:bit]);
-    C_469:bat[:oid] := algebra.thetaselect(X_467:bat[:bit], true:bit, 
"==":str);
-    C_470:bat[:oid] := algebra.projection(C_469:bat[:oid], C_452:bat[:oid]);
-    X_475:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2008-11-02 
09:00:00.000000":timestamp, "2009-03-08 10:00:00.000000":timestamp, 
C_470:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_479:bat[:oid] := algebra.thetaselect(X_475:bat[:bit], true:bit, 
"==":str);
-    C_480:bat[:oid] := algebra.projection(C_479:bat[:oid], C_470:bat[:oid]);
-    X_486:bat[:timestamp] := algebra.projection(C_480:bat[:oid], 
X_61:bat[:timestamp]);
-    X_487:bat[:timestamp] := bat.replace(X_464:bat[:timestamp], 
C_480:bat[:oid], X_486:bat[:timestamp], true:bit);
-    X_489:bat[:bit] := batcalc.not(X_475:bat[:bit]);
-    X_492:bat[:bit] := batcalc.isnil(X_475:bat[:bit]);
-    X_494:bat[:bit] := batcalc.or(X_489:bat[:bit], X_492:bat[:bit]);
-    C_497:bat[:oid] := algebra.thetaselect(X_494:bat[:bit], true:bit, 
"==":str);
-    C_499:bat[:oid] := algebra.projection(C_497:bat[:oid], C_470:bat[:oid]);
-    X_503:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2009-03-08 
10:00:00.000000":timestamp, "2009-11-01 09:00:00.000000":timestamp, 
C_499:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_505:bat[:oid] := algebra.thetaselect(X_503:bat[:bit], true:bit, 
"==":str);
-    C_506:bat[:oid] := algebra.projection(C_505:bat[:oid], C_499:bat[:oid]);
-    X_510:bat[:timestamp] := algebra.projection(C_506:bat[:oid], 
X_86:bat[:timestamp]);
-    X_511:bat[:timestamp] := bat.replace(X_487:bat[:timestamp], 
C_506:bat[:oid], X_510:bat[:timestamp], true:bit);
-    X_512:bat[:bit] := batcalc.not(X_503:bat[:bit]);
-    X_513:bat[:bit] := batcalc.isnil(X_503:bat[:bit]);
-    X_514:bat[:bit] := batcalc.or(X_512:bat[:bit], X_513:bat[:bit]);
-    C_516:bat[:oid] := algebra.thetaselect(X_514:bat[:bit], true:bit, 
"==":str);
-    C_517:bat[:oid] := algebra.projection(C_516:bat[:oid], C_499:bat[:oid]);
-    X_522:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2009-11-01 
09:00:00.000000":timestamp, "2010-03-14 10:00:00.000000":timestamp, 
C_517:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_526:bat[:oid] := algebra.thetaselect(X_522:bat[:bit], true:bit, 
"==":str);
-    C_527:bat[:oid] := algebra.projection(C_526:bat[:oid], C_517:bat[:oid]);
-    X_533:bat[:timestamp] := algebra.projection(C_527:bat[:oid], 
X_61:bat[:timestamp]);
-    X_534:bat[:timestamp] := bat.replace(X_511:bat[:timestamp], 
C_527:bat[:oid], X_533:bat[:timestamp], true:bit);
-    X_535:bat[:bit] := batcalc.not(X_522:bat[:bit]);
-    X_538:bat[:bit] := batcalc.isnil(X_522:bat[:bit]);
-    X_540:bat[:bit] := batcalc.or(X_535:bat[:bit], X_538:bat[:bit]);
-    C_543:bat[:oid] := algebra.thetaselect(X_540:bat[:bit], true:bit, 
"==":str);
-    C_545:bat[:oid] := algebra.projection(C_543:bat[:oid], C_517:bat[:oid]);
-    X_549:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2010-03-14 
10:00:00.000000":timestamp, "2010-11-07 09:00:00.000000":timestamp, 
C_545:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_551:bat[:oid] := algebra.thetaselect(X_549:bat[:bit], true:bit, 
"==":str);
-    C_552:bat[:oid] := algebra.projection(C_551:bat[:oid], C_545:bat[:oid]);
-    X_556:bat[:timestamp] := algebra.projection(C_552:bat[:oid], 
X_86:bat[:timestamp]);
-    X_557:bat[:timestamp] := bat.replace(X_534:bat[:timestamp], 
C_552:bat[:oid], X_556:bat[:timestamp], true:bit);
-    X_559:bat[:bit] := batcalc.not(X_549:bat[:bit]);
-    X_560:bat[:bit] := batcalc.isnil(X_549:bat[:bit]);
-    X_561:bat[:bit] := batcalc.or(X_559:bat[:bit], X_560:bat[:bit]);
-    C_563:bat[:oid] := algebra.thetaselect(X_561:bat[:bit], true:bit, 
"==":str);
-    C_564:bat[:oid] := algebra.projection(C_563:bat[:oid], C_545:bat[:oid]);
-    X_569:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2010-11-07 
09:00:00.000000":timestamp, "2011-03-13 10:00:00.000000":timestamp, 
C_564:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_573:bat[:oid] := algebra.thetaselect(X_569:bat[:bit], true:bit, 
"==":str);
-    C_574:bat[:oid] := algebra.projection(C_573:bat[:oid], C_564:bat[:oid]);
-    X_580:bat[:timestamp] := algebra.projection(C_574:bat[:oid], 
X_61:bat[:timestamp]);
-    X_581:bat[:timestamp] := bat.replace(X_557:bat[:timestamp], 
C_574:bat[:oid], X_580:bat[:timestamp], true:bit);
-    X_582:bat[:bit] := batcalc.not(X_569:bat[:bit]);
-    X_585:bat[:bit] := batcalc.isnil(X_569:bat[:bit]);
-    X_587:bat[:bit] := batcalc.or(X_582:bat[:bit], X_585:bat[:bit]);
-    C_590:bat[:oid] := algebra.thetaselect(X_587:bat[:bit], true:bit, 
"==":str);
-    C_592:bat[:oid] := algebra.projection(C_590:bat[:oid], C_564:bat[:oid]);
-    X_596:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2011-03-13 
10:00:00.000000":timestamp, "2011-11-06 09:00:00.000000":timestamp, 
C_592:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_599:bat[:oid] := algebra.thetaselect(X_596:bat[:bit], true:bit, 
"==":str);
-    C_600:bat[:oid] := algebra.projection(C_599:bat[:oid], C_592:bat[:oid]);
-    X_604:bat[:timestamp] := algebra.projection(C_600:bat[:oid], 
X_86:bat[:timestamp]);
-    X_605:bat[:timestamp] := bat.replace(X_581:bat[:timestamp], 
C_600:bat[:oid], X_604:bat[:timestamp], true:bit);
-    X_606:bat[:bit] := batcalc.not(X_596:bat[:bit]);
-    X_607:bat[:bit] := batcalc.isnil(X_596:bat[:bit]);
-    X_608:bat[:bit] := batcalc.or(X_606:bat[:bit], X_607:bat[:bit]);
-    C_610:bat[:oid] := algebra.thetaselect(X_608:bat[:bit], true:bit, 
"==":str);
-    C_611:bat[:oid] := algebra.projection(C_610:bat[:oid], C_592:bat[:oid]);
-    X_616:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2011-11-06 
09:00:00.000000":timestamp, "2012-03-11 10:00:00.000000":timestamp, 
C_611:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_620:bat[:oid] := algebra.thetaselect(X_616:bat[:bit], true:bit, 
"==":str);
-    C_621:bat[:oid] := algebra.projection(C_620:bat[:oid], C_611:bat[:oid]);
-    X_627:bat[:timestamp] := algebra.projection(C_621:bat[:oid], 
X_61:bat[:timestamp]);
-    X_628:bat[:timestamp] := bat.replace(X_605:bat[:timestamp], 
C_621:bat[:oid], X_627:bat[:timestamp], true:bit);
-    X_629:bat[:bit] := batcalc.not(X_616:bat[:bit]);
-    X_632:bat[:bit] := batcalc.isnil(X_616:bat[:bit]);
-    X_634:bat[:bit] := batcalc.or(X_629:bat[:bit], X_632:bat[:bit]);
-    C_638:bat[:oid] := algebra.thetaselect(X_634:bat[:bit], true:bit, 
"==":str);
-    C_640:bat[:oid] := algebra.projection(C_638:bat[:oid], C_611:bat[:oid]);
-    X_644:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2012-03-11 
10:00:00.000000":timestamp, "2012-11-04 09:00:00.000000":timestamp, 
C_640:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_646:bat[:oid] := algebra.thetaselect(X_644:bat[:bit], true:bit, 
"==":str);
-    C_647:bat[:oid] := algebra.projection(C_646:bat[:oid], C_640:bat[:oid]);
-    X_651:bat[:timestamp] := algebra.projection(C_647:bat[:oid], 
X_86:bat[:timestamp]);
-    X_652:bat[:timestamp] := bat.replace(X_628:bat[:timestamp], 
C_647:bat[:oid], X_651:bat[:timestamp], true:bit);
-    X_653:bat[:bit] := batcalc.not(X_644:bat[:bit]);
-    X_654:bat[:bit] := batcalc.isnil(X_644:bat[:bit]);
-    X_655:bat[:bit] := batcalc.or(X_653:bat[:bit], X_654:bat[:bit]);
-    C_657:bat[:oid] := algebra.thetaselect(X_655:bat[:bit], true:bit, 
"==":str);
-    C_658:bat[:oid] := algebra.projection(C_657:bat[:oid], C_640:bat[:oid]);
-    X_663:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2012-11-04 
09:00:00.000000":timestamp, "2013-03-10 10:00:00.000000":timestamp, 
C_658:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_667:bat[:oid] := algebra.thetaselect(X_663:bat[:bit], true:bit, 
"==":str);
-    C_668:bat[:oid] := algebra.projection(C_667:bat[:oid], C_658:bat[:oid]);
-    X_674:bat[:timestamp] := algebra.projection(C_668:bat[:oid], 
X_61:bat[:timestamp]);
-    X_675:bat[:timestamp] := bat.replace(X_652:bat[:timestamp], 
C_668:bat[:oid], X_674:bat[:timestamp], true:bit);
-    X_677:bat[:bit] := batcalc.not(X_663:bat[:bit]);
-    X_680:bat[:bit] := batcalc.isnil(X_663:bat[:bit]);
-    X_682:bat[:bit] := batcalc.or(X_677:bat[:bit], X_680:bat[:bit]);
-    C_685:bat[:oid] := algebra.thetaselect(X_682:bat[:bit], true:bit, 
"==":str);
-    C_687:bat[:oid] := algebra.projection(C_685:bat[:oid], C_658:bat[:oid]);
-    X_691:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2013-03-10 
10:00:00.000000":timestamp, "2013-11-03 09:00:00.000000":timestamp, 
C_687:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
-    C_693:bat[:oid] := algebra.thetaselect(X_691:bat[:bit], true:bit, 
"==":str);
-    C_694:bat[:oid] := algebra.projection(C_693:bat[:oid], C_687:bat[:oid]);
-    X_698:bat[:timestamp] := algebra.projection(C_694:bat[:oid], 
X_86:bat[:timestamp]);
-    X_699:bat[:timestamp] := bat.replace(X_675:bat[:timestamp], 
C_694:bat[:oid], X_698:bat[:timestamp], true:bit);
-    X_700:bat[:bit] := batcalc.not(X_691:bat[:bit]);
-    X_701:bat[:bit] := batcalc.isnil(X_691:bat[:bit]);
-    X_702:bat[:bit] := batcalc.or(X_700:bat[:bit], X_701:bat[:bit]);
+    C_66:bat[:oid] := bat.mirror(X_65:bat[:timestamp]);
+    C_67:bat[:oid] := algebra.difference(C_66:bat[:oid], C_58:bat[:oid], 
nil:BAT, nil:BAT, false:bit, false:bit, nil:lng);
+    C_71:bat[:oid] := algebra.projection(C_67:bat[:oid], C_66:bat[:oid]);
+    X_75:bat[:bit] := batcalc.between(X_45:bat[:timestamp], "2000-04-02 
10:00:00.000000":timestamp, "2000-10-29 09:00:00.000000":timestamp, 
C_71:bat[:oid], false:bit, true:bit, false:bit, false:bit, false:bit);
+    C_78:bat[:oid] := algebra.thetaselect(X_75:bat[:bit], true:bit, "==":str);
+    C_80:bat[:oid] := algebra.projection(C_78:bat[:oid], C_71:bat[:oid]);
+    X_83:bat[:timestamp] := 
batmtime.timestamp_add_msec_interval(X_45:bat[:timestamp], -25200000:lng);
+    X_84:bat[:timestamp] := algebra.projection(C_80:bat[:oid], 
X_83:bat[:timestamp]);
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to