Changeset: 3c9ca597ed4b for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3c9ca597ed4b
Removed Files:
monetdb5/modules/mal/cluster.c
monetdb5/modules/mal/cluster.h
monetdb5/modules/mal/cluster.mal
monetdb5/optimizer/opt_accumulators.c
monetdb5/optimizer/opt_accumulators.h
Modified Files:
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
clients/Tests/exports.stable.out
gdk/ChangeLog
gdk/gdk.h
gdk/gdk_join_legacy.c
gdk/gdk_private.h
monetdb5/ChangeLog
monetdb5/mal/Tests/tst810.mal
monetdb5/mal/Tests/tst810.stable.out
monetdb5/modules/kernel/algebra.c
monetdb5/modules/kernel/algebra.h
monetdb5/modules/kernel/algebra.mal
monetdb5/modules/mal/Makefile.ag
monetdb5/modules/mal/Tests/remote12.stable.out
monetdb5/modules/mal/joinpath.c
monetdb5/optimizer/Makefile.ag
monetdb5/optimizer/Tests/All
monetdb5/optimizer/opt_costModel.c
monetdb5/optimizer/opt_generator.c
monetdb5/optimizer/opt_joinpath.c
monetdb5/optimizer/opt_mergetable.c
monetdb5/optimizer/opt_mitosis.c
monetdb5/optimizer/opt_prelude.c
monetdb5/optimizer/opt_prelude.h
monetdb5/optimizer/opt_pushselect.c
monetdb5/optimizer/opt_reorder.c
monetdb5/optimizer/opt_support.c
monetdb5/optimizer/opt_support.h
monetdb5/optimizer/opt_wrapper.c
monetdb5/optimizer/optimizer.mal
sql/backends/monet5/Tests/optimizers.sql
sql/backends/monet5/Tests/optimizers.stable.err
sql/benchmarks/tpch/Tests/01-explain.stable.out
sql/benchmarks/tpch/Tests/01-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/03-explain.stable.out
sql/benchmarks/tpch/Tests/04-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/05-explain.stable.out
sql/benchmarks/tpch/Tests/05-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/06-explain.stable.out
sql/benchmarks/tpch/Tests/07-explain.stable.out
sql/benchmarks/tpch/Tests/08-explain.stable.out
sql/benchmarks/tpch/Tests/09-explain.stable.out
sql/benchmarks/tpch/Tests/10-explain.stable.out
sql/benchmarks/tpch/Tests/11-explain.stable.out
sql/benchmarks/tpch/Tests/12-explain.stable.out
sql/benchmarks/tpch/Tests/13-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/14-explain.stable.out
sql/benchmarks/tpch/Tests/15-explain.stable.out
sql/benchmarks/tpch/Tests/16-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/17-explain.stable.out
sql/benchmarks/tpch/Tests/18-explain.stable.out
sql/benchmarks/tpch/Tests/19-explain.stable.out
sql/benchmarks/tpch/Tests/20-explain.stable.out
sql/benchmarks/tpch/Tests/20-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/21-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/22-explain.stable.out
sql/benchmarks/tpch/Tests/22-explain.stable.out.32bit
sql/test/Tests/setoptimizer.stable.err
sql/test/setoptimizer.sql
Branch: leftmart
Log Message:
Merge with default
diffs (truncated from 7891 to 300 lines):
diff --git a/NT/installer32/MonetDB5-SQL-Installer.vdproj
b/NT/installer32/MonetDB5-SQL-Installer.vdproj
--- a/NT/installer32/MonetDB5-SQL-Installer.vdproj
+++ b/NT/installer32/MonetDB5-SQL-Installer.vdproj
@@ -675,12 +675,6 @@
}
"Entry"
{
- "MsmKey" = "8:_B262C796F62A48F596C8828B2470C0D6"
- "OwnerKey" = "8:_UNDEFINED"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
"MsmKey" = "8:_B2CE130DAD3B4D3FA2F1CE0B77BE0F21"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
@@ -3200,26 +3194,6 @@
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
-
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B262C796F62A48F596C8828B2470C0D6"
- {
- "SourcePath" = "8:lib\\monetdb5\\cluster.mal"
- "TargetName" = "8:cluster.mal"
- "Tag" = "8:"
- "Folder" = "8:_B593DAA0787744D6A44D17884E0C3951"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Vital" = "11:TRUE"
- "ReadOnly" = "11:FALSE"
- "Hidden" = "11:FALSE"
- "System" = "11:FALSE"
- "Permanent" = "11:FALSE"
- "SharedLegacy" = "11:FALSE"
- "PackageAs" = "3:1"
- "Register" = "3:1"
- "Exclude" = "11:FALSE"
- "IsDependency" = "11:FALSE"
- "IsolateTo" = "8:"
- }
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B2CE130DAD3B4D3FA2F1CE0B77BE0F21"
{
"SourcePath" = "8:lib\\monetdb5\\createdb\\11_times.sql"
diff --git a/NT/installer64/MonetDB5-SQL-Installer.vdproj
b/NT/installer64/MonetDB5-SQL-Installer.vdproj
--- a/NT/installer64/MonetDB5-SQL-Installer.vdproj
+++ b/NT/installer64/MonetDB5-SQL-Installer.vdproj
@@ -63,12 +63,6 @@
}
"Entry"
{
- "MsmKey" = "8:_09037EED43A6416AA200DF27BB53F675"
- "OwnerKey" = "8:_UNDEFINED"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
"MsmKey" = "8:_0C663F8F9CD74DE2A56C520C4E893AA2"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
@@ -1180,26 +1174,6 @@
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
-
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_09037EED43A6416AA200DF27BB53F675"
- {
- "SourcePath" = "8:lib\\monetdb5\\cluster.mal"
- "TargetName" = "8:cluster.mal"
- "Tag" = "8:"
- "Folder" = "8:_B593DAA0787744D6A44D17884E0C3951"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Vital" = "11:TRUE"
- "ReadOnly" = "11:FALSE"
- "Hidden" = "11:FALSE"
- "System" = "11:FALSE"
- "Permanent" = "11:FALSE"
- "SharedLegacy" = "11:FALSE"
- "PackageAs" = "3:1"
- "Register" = "3:1"
- "Exclude" = "11:FALSE"
- "IsDependency" = "11:FALSE"
- "IsolateTo" = "8:"
- }
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_0C663F8F9CD74DE2A56C520C4E893AA2"
{
"SourcePath" = "8:lib\\monetdb5\\querylog.mal"
diff --git a/clients/Tests/MAL-signatures.stable.out
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -2328,11 +2328,7 @@ command algebra.join(left:bat[:oid,:any_
address ALGjoin2;
comment Returns 2 columns with all BUNs, consisting of the head-oids from
'left' and 'right' for which there are BUNs in 'left' and 'right' with
equal tails
-pattern algebra.leftfetchjoinPath(l:bat[:any,:any]...):bat[:any,:any]
-address ALGjoinPath;
-comment Routine to handle join paths. The type analysis is rather tricky.
-
-pattern algebra.leftjoinPath(l:bat[:any,:any]...):bat[:oid,:any]
+pattern algebra.leftfetchjoinPath(l:bat[:oid,:any]...):bat[:oid,:any]
address ALGjoinPath;
comment Routine to handle join paths. The type analysis is rather tricky.
@@ -2362,10 +2358,6 @@ command algebra.leftfetchjoin(left:bat[:
address ALGleftfetchjoin;
comment Hook directly into the left fetch join implementation.
-command
algebra.leftjoin(left:bat[:oid,:any_2],right:bat[:any_2,:any_3],estimate:lng):bat[:oid,:any_3]
-address ALGleftjoinestimate;
-command
algebra.leftjoin(left:bat[:oid,:any_2],right:bat[:any_2,:any_3]):bat[:oid,:any_3]
-address ALGleftjoin;
command algebra.not_ilike(s:str,pat:str):bit
address PCREnotilike2;
command algebra.not_ilike(s:str,pat:str,esc:str):bit
@@ -2382,7 +2374,7 @@ command algebra.reuse(b:bat[:oid,:any_1]
address ALGreuse;
comment Reuse a temporary BAT if you can. Otherwise, allocate enough storage
to accept result of an operation (not involving the heap)
-pattern algebra.semijoinPath(l:bat[:any,:any]...):bat[:any,:any]
+pattern algebra.semijoinPath(l:bat[:oid,:any]...):bat[:oid,:any]
address ALGjoinPath;
comment Routine to handle join paths. The type analysis is rather tricky.
@@ -2499,14 +2491,6 @@ command algebra.subselect(b:bat[:oid,:an
address ALGsubselect1;
comment Select all head values for which the tail value is in range. Input
is a dense-headed BAT, output is a dense-headed BAT with in the tail the
head value of the input BAT for which the tail value is between the
values low and high (inclusive if li respectively hi is set). The
output BAT is sorted on the tail value. If low or high is nil, the
boundary is not considered (effectively - and + infinity). If anti is
set, the result is the complement. Nil values in the tail are never
matched, unless low=nil, high=nil, li=1, hi=1, anti=0. All non-nil values are
returned if low=nil, high=nil, and li, hi are not both 1, or anti=1.
Note that the output is suitable as second input for the other version of this
function.
-command algebra.tdiff(left:bat[:oid,:oid],right:bat[:oid,:oid]):bat[:oid,:oid]
-address ALGtdiff;
-comment Deprecated, see algebra.subdiff
-
-command
algebra.tinter(left:bat[:oid,:oid],right:bat[:oid,:oid]):bat[:oid,:oid]
-address ALGtinter;
-comment Deprecated, see algebra.semijoin
-
command
algebra.thetasubselect(b:bat[:oid,:any_1],s:bat[:oid,:oid],val:any_1,op:str):bat[:oid,:oid]
address ALGthetasubselect2;
comment Select all head values of the first input BAT for which the tail value
obeys the relation value OP VAL and for which the head value occurs in the
tail of the second input BAT. Input is a dense-headed BAT, output is a
dense-headed BAT with in the tail the head value of the input BAT for
which the relationship holds. The output BAT is sorted on the tail value.
@@ -31259,7 +31243,7 @@ command bat.mergecand(a:bat[:oid,:oid],b
address BKCmergecand;
comment Merge two candidate lists into one
-command bat.mirror(b:bat[:any_1,:any_2]):bat[:any_1,:any_1]
+command bat.mirror(b:bat[:oid,:any_2]):bat[:oid,:oid]
address BKCmirror;
comment Returns the head-mirror image of a BAT (two head columns).
@@ -31325,10 +31309,6 @@ command bat.replace(b:bat[:oid,:any_1],h
address BKCbun_inplace;
comment Replace the tail value of one BUN that has some head value.
-command bat.reverse(b:bat[:any_1,:any_2]):bat[:any_2,:any_1]
-address BKCreverse;
-comment Returns the reverse view of a BAT (head is tail and tail is head).
BEWARE no copying is involved; input and output refer to the same
object!
-
pattern bat.single(val:any_1):bat[:oid,:any_1]
address CMDBATsingle;
comment Create a BAT with a single elemenet
@@ -38395,13 +38375,13 @@ command inet.#tostr():void
address INETtoString;
comment Convert inet to string equivalent
-command io.export(b:bat[:oid,:any_2],filepath:str):bit
+command io.export(b:bat[:oid,:any_2],filepath:str):void
address IOexport;
comment Export a BAT as ASCII to a file. If the 'filepath' is not absolute, it
is put into the $DBPATH directory. Success of failure is indicated.
-command io.import(b:bat[:oid,:any_2],filepath:str):bat[:oid,:any_2]
+command io.import(b:bat[:oid,:any_2],filepath:str):void
address IOimport;
-comment Import a BAT from an ASCII dump. The new tuples are *inserted* into
the parameter BAT. You have to create it! Its signature must match the dump,
else parsing errors will occur and FALSE is returned.
+comment Import a BAT from an ASCII dump. The tuples are appended to the first
argument. Its signature must match the dump, else parsing errors will occur as
an exception.
pattern io.printf(filep:streams,fmt:str):void
address IOprintfStream;
@@ -39755,12 +39735,6 @@ comment Alias removal optimizer
pattern optimizer.aliases():str
address OPTwrapper;
-pattern optimizer.accumulators(mod:str,fcn:str):str
-address OPTwrapper;
-comment Replace calculations with accumulator model
-
-pattern optimizer.accumulators():str
-address OPTwrapper;
pattern optimizer.clrDebug():void
address QOTclrdebugOptimizers;
pattern optimizer.crackers(mod:str,fcn:str):str
@@ -40175,7 +40149,7 @@ pattern remote.batbincopy():bat[:oid,:an
address RMTbincopyfrom;
comment store the binary BAT data in the BBP and return as BAT
-pattern remote.batbincopy(b:BAT):void
+pattern remote.batbincopy(b:bat[:oid,:any]):void
address RMTbincopyto;
comment dump BAT b in binary form to the stream
diff --git a/clients/Tests/MAL-signatures.stable.out.int128
b/clients/Tests/MAL-signatures.stable.out.int128
--- a/clients/Tests/MAL-signatures.stable.out.int128
+++ b/clients/Tests/MAL-signatures.stable.out.int128
@@ -2839,11 +2839,7 @@ command algebra.join(left:bat[:oid,:any_
address ALGjoin2;
comment Returns 2 columns with all BUNs, consisting of the head-oids from
'left' and 'right' for which there are BUNs in 'left' and 'right' with
equal tails
-pattern algebra.leftfetchjoinPath(l:bat[:any,:any]...):bat[:any,:any]
-address ALGjoinPath;
-comment Routine to handle join paths. The type analysis is rather tricky.
-
-pattern algebra.leftjoinPath(l:bat[:any,:any]...):bat[:oid,:any]
+pattern algebra.leftfetchjoinPath(l:bat[:oid,:any]...):bat[:oid,:any]
address ALGjoinPath;
comment Routine to handle join paths. The type analysis is rather tricky.
@@ -2873,10 +2869,6 @@ command algebra.leftfetchjoin(left:bat[:
address ALGleftfetchjoin;
comment Hook directly into the left fetch join implementation.
-command
algebra.leftjoin(left:bat[:oid,:any_2],right:bat[:any_2,:any_3],estimate:lng):bat[:oid,:any_3]
-address ALGleftjoinestimate;
-command
algebra.leftjoin(left:bat[:oid,:any_2],right:bat[:any_2,:any_3]):bat[:oid,:any_3]
-address ALGleftjoin;
command algebra.not_ilike(s:str,pat:str):bit
address PCREnotilike2;
command algebra.not_ilike(s:str,pat:str,esc:str):bit
@@ -2893,7 +2885,7 @@ command algebra.reuse(b:bat[:oid,:any_1]
address ALGreuse;
comment Reuse a temporary BAT if you can. Otherwise, allocate enough storage
to accept result of an operation (not involving the heap)
-pattern algebra.semijoinPath(l:bat[:any,:any]...):bat[:any,:any]
+pattern algebra.semijoinPath(l:bat[:oid,:any]...):bat[:oid,:any]
address ALGjoinPath;
comment Routine to handle join paths. The type analysis is rather tricky.
@@ -3010,14 +3002,6 @@ command algebra.subselect(b:bat[:oid,:an
address ALGsubselect1;
comment Select all head values for which the tail value is in range. Input
is a dense-headed BAT, output is a dense-headed BAT with in the tail the
head value of the input BAT for which the tail value is between the
values low and high (inclusive if li respectively hi is set). The
output BAT is sorted on the tail value. If low or high is nil, the
boundary is not considered (effectively - and + infinity). If anti is
set, the result is the complement. Nil values in the tail are never
matched, unless low=nil, high=nil, li=1, hi=1, anti=0. All non-nil values are
returned if low=nil, high=nil, and li, hi are not both 1, or anti=1.
Note that the output is suitable as second input for the other version of this
function.
-command algebra.tdiff(left:bat[:oid,:oid],right:bat[:oid,:oid]):bat[:oid,:oid]
-address ALGtdiff;
-comment Deprecated, see algebra.subdiff
-
-command
algebra.tinter(left:bat[:oid,:oid],right:bat[:oid,:oid]):bat[:oid,:oid]
-address ALGtinter;
-comment Deprecated, see algebra.semijoin
-
command
algebra.thetasubselect(b:bat[:oid,:any_1],s:bat[:oid,:oid],val:any_1,op:str):bat[:oid,:oid]
address ALGthetasubselect2;
comment Select all head values of the first input BAT for which the tail value
obeys the relation value OP VAL and for which the head value occurs in the
tail of the second input BAT. Input is a dense-headed BAT, output is a
dense-headed BAT with in the tail the head value of the input BAT for
which the relationship holds. The output BAT is sorted on the tail value.
@@ -40304,7 +40288,7 @@ command bat.mergecand(a:bat[:oid,:oid],b
address BKCmergecand;
comment Merge two candidate lists into one
-command bat.mirror(b:bat[:any_1,:any_2]):bat[:any_1,:any_1]
+command bat.mirror(b:bat[:oid,:any_2]):bat[:oid,:oid]
address BKCmirror;
comment Returns the head-mirror image of a BAT (two head columns).
@@ -40370,10 +40354,6 @@ command bat.replace(b:bat[:oid,:any_1],h
address BKCbun_inplace;
comment Replace the tail value of one BUN that has some head value.
-command bat.reverse(b:bat[:any_1,:any_2]):bat[:any_2,:any_1]
-address BKCreverse;
-comment Returns the reverse view of a BAT (head is tail and tail is head).
BEWARE no copying is involved; input and output refer to the same
object!
-
pattern bat.single(val:any_1):bat[:oid,:any_1]
address CMDBATsingle;
comment Create a BAT with a single elemenet
@@ -49310,13 +49290,13 @@ command inet.#tostr():void
address INETtoString;
comment Convert inet to string equivalent
-command io.export(b:bat[:oid,:any_2],filepath:str):bit
+command io.export(b:bat[:oid,:any_2],filepath:str):void
address IOexport;
comment Export a BAT as ASCII to a file. If the 'filepath' is not absolute, it
is put into the $DBPATH directory. Success of failure is indicated.
-command io.import(b:bat[:oid,:any_2],filepath:str):bat[:oid,:any_2]
+command io.import(b:bat[:oid,:any_2],filepath:str):void
address IOimport;
-comment Import a BAT from an ASCII dump. The new tuples are *inserted* into
the parameter BAT. You have to create it! Its signature must match the dump,
else parsing errors will occur and FALSE is returned.
+comment Import a BAT from an ASCII dump. The tuples are appended to the first
argument. Its signature must match the dump, else parsing errors will occur as
an exception.
pattern io.printf(filep:streams,fmt:str):void
address IOprintfStream;
@@ -50686,12 +50666,6 @@ comment Alias removal optimizer
pattern optimizer.aliases():str
address OPTwrapper;
-pattern optimizer.accumulators(mod:str,fcn:str):str
-address OPTwrapper;
-comment Replace calculations with accumulator model
-
-pattern optimizer.accumulators():str
-address OPTwrapper;
pattern optimizer.clrDebug():void
address QOTclrdebugOptimizers;
pattern optimizer.crackers(mod:str,fcn:str):str
@@ -51106,7 +51080,7 @@ pattern remote.batbincopy():bat[:oid,:an
address RMTbincopyfrom;
comment store the binary BAT data in the BBP and return as BAT
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list