Changeset: 743879839df2 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=743879839df2 Modified Files: MonetDB.spec NT/rules.msc buildtools/autogen/autogen/msc.py sql/server/rel_bin.c sql/server/rel_optimizer.c sql/server/rel_select.c sql/test/BugTracker-2012/Tests/bart-crash.Bug-3057.stable.out sql/test/BugTracker-2012/Tests/server-crash.Bug-3046.stable.err sql/test/BugTracker-2012/Tests/server-crash.Bug-3046.stable.out Branch: default Log Message:
Merge with Apr2012 branch. diffs (238 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -48,7 +48,9 @@ BuildRequires: python BuildRequires: readline-devel BuildRequires: ruby BuildRequires: rubygems +%if %{?centos:0}%{!?centos:1} BuildRequires: rubygems-devel +%endif BuildRequires: unixODBC-devel BuildRequires: zlib-devel diff --git a/NT/rules.msc b/NT/rules.msc --- a/NT/rules.msc +++ b/NT/rules.msc @@ -290,9 +290,9 @@ create_winconfig_conds_new_py: $(ECHO) ENABLE_DATACELL_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py" !ENDIF !IFDEF HAVE_CFITSIO - $(ECHO) "HAVE_CFITSIO_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py" + $(ECHO) HAVE_CFITSIO_FALSE='#' >> "$(TOPDIR)\winconfig_conds_new.py" !ELSE - $(ECHO) "HAVE_CFITSIO_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py" + $(ECHO) HAVE_CFITSIO_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py" !ENDIF !IFDEF HAVE_DEVELOPER $(ECHO) HAVE_DEVELOPER_FALSE='#' >> "$(TOPDIR)\winconfig_conds_new.py" @@ -342,9 +342,9 @@ create_winconfig_conds_new_py: $(ECHO) HAVE_MONETDB5_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py" !ENDIF !IFDEF HAVE_MSEED - $(ECHO) "HAVE_MSEED_FALSE='#'" >> "$(TOPDIR)\winconfig_conds_new.py" + $(ECHO) HAVE_MSEED_FALSE='#' >> "$(TOPDIR)\winconfig_conds_new.py" !ELSE - $(ECHO) "HAVE_MSEED_FALSE=''" >> "$(TOPDIR)\winconfig_conds_new.py" + $(ECHO) HAVE_MSEED_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py" !ENDIF !IFDEF HAVE_ODBC $(ECHO) HAVE_ODBC_FALSE='#' >> "$(TOPDIR)\winconfig_conds_new.py" diff --git a/buildtools/autogen/autogen/msc.py b/buildtools/autogen/autogen/msc.py --- a/buildtools/autogen/autogen/msc.py +++ b/buildtools/autogen/autogen/msc.py @@ -985,6 +985,7 @@ def msc_gem(fd, var, gem, msc): if gem.has_key('DIR'): rd = gem['DIR'][0] rd = msc_translate_dir(rd, msc) + rd = '$(prefix)\\' + rd fd.write('!IF defined(HAVE_RUBYGEM)\n') for f in gem['FILES']: msc['SCRIPTS'].append(f[:-4]) diff --git a/sql/server/rel_bin.c b/sql/server/rel_bin.c --- a/sql/server/rel_bin.c +++ b/sql/server/rel_bin.c @@ -630,7 +630,7 @@ exp_bin(mvc *sql, sql_exp *e, stmt *left if (e->flag == cmp_or && right) /* join */ assert(0); /* here we handle join indices */ - if ((p=find_prop(e->p, PROP_JOINIDX)) != NULL) { + if (right && (p=find_prop(e->p, PROP_JOINIDX)) != NULL) { sql_idx *i = p->value; sql_exp *el = e->l; sql_exp *er = e->r; diff --git a/sql/server/rel_optimizer.c b/sql/server/rel_optimizer.c --- a/sql/server/rel_optimizer.c +++ b/sql/server/rel_optimizer.c @@ -793,7 +793,7 @@ order_joins(mvc *sql, list *rels, list * while(list_length(exps) && fnd) { fnd = 0; /* find the first expression which could be added */ - for(djn = sdje->h; djn && !fnd; djn = (!fnd)?djn->next:NULL) { + for(djn = sdje->h; djn && !fnd && rels->h; djn = (!fnd)?djn->next:NULL) { node *ln, *rn, *en; cje = djn->data; diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c --- a/sql/server/rel_select.c +++ b/sql/server/rel_select.c @@ -1350,7 +1350,8 @@ rel_bind_column_(mvc *sql, sql_rel **p, case op_topn: case op_sample: *p = rel; - return rel_bind_column_(sql, p, rel->l, cname); + if (rel->l) + return rel_bind_column_(sql, p, rel->l, cname); default: return NULL; } diff --git a/sql/test/BugTracker-2012/Tests/bart-crash.Bug-3057.stable.out b/sql/test/BugTracker-2012/Tests/bart-crash.Bug-3057.stable.out --- a/sql/test/BugTracker-2012/Tests/bart-crash.Bug-3057.stable.out +++ b/sql/test/BugTracker-2012/Tests/bart-crash.Bug-3057.stable.out @@ -133,8 +133,7 @@ Ready. # AND x.ra BETWEEN r.wm_ra - alpha(im0.bmaj, r.wm_decl) # AND r.wm_ra + alpha(im0.bmaj, r.wm_decl) # AND r.x * x.x + r.y * x.y + r.z * x.z > COS(RADIANS(im0.bmaj)) -#; -% sys.t # table_name +% sys.r # table_name % xtrsrc_id # name % int # type % 1 # length diff --git a/sql/test/BugTracker-2012/Tests/server-crash.Bug-3046.stable.err b/sql/test/BugTracker-2012/Tests/server-crash.Bug-3046.stable.err --- a/sql/test/BugTracker-2012/Tests/server-crash.Bug-3046.stable.err +++ b/sql/test/BugTracker-2012/Tests/server-crash.Bug-3046.stable.err @@ -1,1 +1,37 @@ -to be filled in... +stderr of test 'server-crash.Bug-3046` in directory 'test/BugTracker-2012` itself: + + +# 22:13:03 > +# 22:13:03 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "gdk_dbfarm=/home/niels/scratch/rc-clean/Linux-x86_64/var/MonetDB" "--set" "mapi_open=true" "--set" "mapi_port=35583" "--set" "monet_prompt=" "--trace" "--forcemito" "--set" "mal_listing=2" "--dbname=mTests_test_BugTracker-2012" "--set" "mal_listing=0" +# 22:13:03 > + +# builtin opt gdk_dbname = demo +# builtin opt gdk_dbfarm = /home/niels/scratch/rc-clean/Linux-x86_64/var/monetdb5/dbfarm +# builtin opt gdk_debug = 0 +# builtin opt gdk_alloc_map = no +# builtin opt gdk_vmtrim = yes +# builtin opt monet_prompt = > +# builtin opt monet_daemon = no +# builtin opt mapi_port = 50000 +# builtin opt mapi_open = false +# builtin opt mapi_autosense = false +# builtin opt sql_optimizer = default_pipe +# builtin opt sql_debug = 0 +# cmdline opt gdk_nr_threads = 0 +# cmdline opt gdk_dbfarm = /home/niels/scratch/rc-clean/Linux-x86_64/var/MonetDB +# cmdline opt mapi_open = true +# cmdline opt mapi_port = 35583 +# cmdline opt monet_prompt = +# cmdline opt mal_listing = 2 +# cmdline opt gdk_dbname = mTests_test_BugTracker-2012 +# cmdline opt mal_listing = 0 + +# 22:13:03 > +# 22:13:03 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=niels" "--port=35583" +# 22:13:03 > + + +# 22:13:03 > +# 22:13:03 > "Done." +# 22:13:03 > + diff --git a/sql/test/BugTracker-2012/Tests/server-crash.Bug-3046.stable.out b/sql/test/BugTracker-2012/Tests/server-crash.Bug-3046.stable.out --- a/sql/test/BugTracker-2012/Tests/server-crash.Bug-3046.stable.out +++ b/sql/test/BugTracker-2012/Tests/server-crash.Bug-3046.stable.out @@ -1,1 +1,90 @@ -to be filled in... +stdout of test 'server-crash.Bug-3046` in directory 'test/BugTracker-2012` itself: + + +# 22:13:03 > +# 22:13:03 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "gdk_dbfarm=/home/niels/scratch/rc-clean/Linux-x86_64/var/MonetDB" "--set" "mapi_open=true" "--set" "mapi_port=35583" "--set" "monet_prompt=" "--trace" "--forcemito" "--set" "mal_listing=2" "--dbname=mTests_test_BugTracker-2012" "--set" "mal_listing=0" +# 22:13:03 > + +# MonetDB 5 server v11.9.2 +# This is an unreleased version +# Serving database 'mTests_test_BugTracker-2012', using 4 threads +# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs dynamically linked +# Found 3.778 GiB available main-memory. +# Copyright (c) 1993-July 2008 CWI. +# Copyright (c) August 2008-2012 MonetDB B.V., all rights reserved +# Visit http://www.monetdb.org/ for further information +# Listening for connection requests on mapi:monetdb://niels.nesco.mine.nu:35583/ +# MonetDB/GIS module loaded +# MonetDB/SQL module loaded + +Ready. + +# 22:13:03 > +# 22:13:03 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=niels" "--port=35583" +# 22:13:03 > + +#START TRANSACTION; +#CREATE TABLE node ( +# id integer NOT NULL, +# text_ref integer NOT NULL, +# corpus_ref integer NOT NULL, +# namespace character varying(100), +# name character varying(100) NOT NULL, +# "left" integer NOT NULL, +# "right" integer NOT NULL, +# token_index integer, +# continuous boolean, +# span character varying(2000), +# toplevel_corpus integer NOT NULL, +#CREATE TABLE rank ( +# pre integer NOT NULL, +# post integer NOT NULL, +# node_ref integer NOT NULL, +# component_ref integer NOT NULL, +# parent integer, +# root boolean, +# level integer NOT NULL +#); +#CREATE TABLE component ( +# id integer NOT NULL, +# type character(1), +# namespace character varying(255), +# name character varying(255) +#); +#ALTER TABLE node ADD CONSTRAINT "PK_node" PRIMARY KEY (id); +#ALTER TABLE component ADD CONSTRAINT "PK_component" PRIMARY KEY (id); +#ALTER TABLE rank ADD CONSTRAINT "PK_rank" PRIMARY KEY (pre); +#ALTER TABLE rank ADD CONSTRAINT "UNIQ_rank_pre" UNIQUE (pre); +#ALTER TABLE rank ADD CONSTRAINT "UNIQ_rank_post" UNIQUE (post); +#ALTER TABLE rank ADD CONSTRAINT "FK_rank_parent" FOREIGN KEY (parent) REFERENCES rank (pre); +#ALTER TABLE rank ADD CONSTRAINT "FK_rank_node" FOREIGN KEY (node_ref) REFERENCES node (id); +#ALTER TABLE rank ADD CONSTRAINT "FK_rank_component" FOREIGN KEY (component_ref) REFERENCES component (id); +#SELECT +# count(*) +#FROM +# ( +# SELECT DISTINCT +# node1.id AS id1, node2.id AS id2, node1.toplevel_corpus +# FROM +# node AS node1, rank AS rank1, component AS component1, +# node AS node2, rank AS rank2, component AS component2 +# WHERE +# component1.id = component2.id AND +# component1.name IS NULL AND +# component1.type = 'd' AND +# component2.name IS NULL AND +# component2.type = 'd' AND +# rank1.component_ref = component1.id AND +# rank1.node_ref = node1.id AND +# rank1.pre = rank2.parent AND +% sys.solutions # table_name +% L1 # name +% wrd # type +% 1 # length +[ 0 ] +#ROLLBACK; + +# 22:13:03 > +# 22:13:03 > "Done." +# 22:13:03 > + _______________________________________________ Checkin-list mailing list Checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list