You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Date: 2011-11-16 15:03:01 +0100
From: Viktor Rosenfeld <<24hesk>>
To: SQL devs <>
Version: 11.7.5 (Dec2011) [obsolete]
CC: @njnes
Last updated: 2013-06-09 14:17:39 +0200
Comment 16560
Date: 2011-11-16 15:03:01 +0100
From: Viktor Rosenfeld <<24hesk>>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.120 Safari/535.2
Build Identifier:
The following query results in an error message:
SELECT
count(*)
FROM
_rank AS _rank1,
_rank AS _rank2
WHERE
NOT _rank1.pre = _rank2.pre AND
EXISTS (SELECT pre FROM _rank AS ancestor WHERE
ancestor.pre < _rank1.pre AND _rank1.pre < ancestor.post AND
ancestor.pre < _rank2.pre AND _rank2.pre < ancestor.post);
Reproducible: Always
Steps to Reproduce:
The following table can be used to reproduce the error:
CREATE TABLE _rank (pre INTEGER, post INTEGER);
INSERT INTO _rank VALUES (22, 37);
INSERT INTO _rank VALUES (23, 24);
INSERT INTO _rank VALUES (33, 34);
If actual data is used inside the EXISTS clause then the query works, e.g.
SELECT
count(*)
FROM
_rank AS _rank1,
_rank AS _rank2
WHERE
_rank2.pre = 33 AND
NOT _rank1.pre = _rank2.pre AND
EXISTS (SELECT pre FROM _rank AS ancestor WHERE
ancestor.pre < _rank1.pre AND _rank1.pre < ancestor.post AND
ancestor.pre < 33 AND 33 < ancestor.post);
MonetDB is installed from the OS X download package.
mserver5 --version follows:
MonetDB 5 server v11.5.7 "Aug2011-SP2" (64-bit, 64-bit oids)
Copyright (c) 1993-July 2008 CWI
Copyright (c) August 2008-2011 MonetDB B.V., all rights reserved
Visit http://www.monetdb.org/ for further information
Found 4.0GiB available memory, 2 available cpu cores
Libraries:
libpcre: 8.11 2010-12-10 (compiled with 8.11)
openssl: OpenSSL 1.0.0d 8 Feb 2011 (compiled with OpenSSL 1.0.0d 8 Feb 2011)
libxml2: 2.7.8 (compiled with 2.7.8)
Compiled by: monetdb-bin-builder (x86_64-apple-darwin9)
Compilation: x86_64-apple-darwin9-gcc -fast -pipe
Linking : /Volumes/scratch/gentoo/x86_64/usr/bin/x86_64-apple-darwin9-ld -Wl,-dead_strip_dylibs
Comment 16561
Date: 2011-11-16 15:06:42 +0100
From: Viktor Rosenfeld <<24hesk>>
Not sure, if this is related, but if I try to rewrite the query as follows:
SELECT
count(*)
FROM
_rank AS _rank1,
_rank AS _rank2
WHERE
NOT _rank1.pre = _rank2.pre AND
EXISTS (SELECT pre FROM _rank AS ancestor WHERE
ancestor.pre < _rank1.pre AND _rank1.pre < ancestor.post
INTERSECT SELECT pre FROM _rank AS ancestor WHERE
ancestor.pre < _rank2.pre AND _rank2.pre < ancestor.post);
I get another error message: SELECT: no such column '_rank1.pre'
fix bug with semijoins. This partialy fixes bug #2933 and bug #2915.
Comment 16810
Date: 2012-01-25 10:43:41 +0100
From: Viktor Rosenfeld <<24hesk>>
The original query now works on the latest Dec2011 release. However the version with INTERSECT now throws a new error message: 21000!zero_or_one: cardinality violation (2>1).
I'm using the following query.
SELECT count(*)
FROM rank AS rank1, rank AS rank2
WHERE
rank1.pre IN (1, 3, 5, 6, 8, 13) AND
rank2.pre IN (1, 3, 5, 6, 8, 13) AND
NOT rank1.pre = rank2.pre AND
EXISTS (
SELECT ancestor.pre
FROM rank AS ancestor
WHERE ancestor.pre < rank1.pre AND rank1.pre < ancestor.post
INTERSECT SELECT ancestor.pre
FROM rank AS ancestor
WHERE ancestor.pre < rank2.pre AND rank2.pre < ancestor.post
);
Date: 2011-11-16 15:03:01 +0100
From: Viktor Rosenfeld <<24hesk>>
To: SQL devs <>
Version: 11.7.5 (Dec2011) [obsolete]
CC: @njnes
Last updated: 2013-06-09 14:17:39 +0200
Comment 16560
Date: 2011-11-16 15:03:01 +0100
From: Viktor Rosenfeld <<24hesk>>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.120 Safari/535.2
Build Identifier:
The following query results in an error message:
SELECT
count(*)
FROM
_rank AS _rank1,
_rank AS _rank2
WHERE
NOT _rank1.pre = _rank2.pre AND
EXISTS (SELECT pre FROM _rank AS ancestor WHERE
ancestor.pre < _rank1.pre AND _rank1.pre < ancestor.post AND
ancestor.pre < _rank2.pre AND _rank2.pre < ancestor.post);
Reproducible: Always
Steps to Reproduce:
The following table can be used to reproduce the error:
CREATE TABLE _rank (pre INTEGER, post INTEGER);
INSERT INTO _rank VALUES (22, 37);
INSERT INTO _rank VALUES (23, 24);
INSERT INTO _rank VALUES (33, 34);
Actual Results:
The following error message:
TypeException:user.s0_1[77]:'algebra.join' undefined in: _100:any := algebra.join(_99:bat[:oid,:oid], _80:bat[:int,:oid])
SQLException:SQLengine:Program contains errors
Expected Results:
+------+
| L147 |
+======+
| 2 |
+------+
1 tuple
If actual data is used inside the EXISTS clause then the query works, e.g.
SELECT
count(*)
FROM
_rank AS _rank1,
_rank AS _rank2
WHERE
_rank2.pre = 33 AND
NOT _rank1.pre = _rank2.pre AND
EXISTS (SELECT pre FROM _rank AS ancestor WHERE
ancestor.pre < _rank1.pre AND _rank1.pre < ancestor.post AND
ancestor.pre < 33 AND 33 < ancestor.post);
MonetDB is installed from the OS X download package.
mserver5 --version follows:
MonetDB 5 server v11.5.7 "Aug2011-SP2" (64-bit, 64-bit oids)
Copyright (c) 1993-July 2008 CWI
Copyright (c) August 2008-2011 MonetDB B.V., all rights reserved
Visit http://www.monetdb.org/ for further information
Found 4.0GiB available memory, 2 available cpu cores
Libraries:
libpcre: 8.11 2010-12-10 (compiled with 8.11)
openssl: OpenSSL 1.0.0d 8 Feb 2011 (compiled with OpenSSL 1.0.0d 8 Feb 2011)
libxml2: 2.7.8 (compiled with 2.7.8)
Compiled by: monetdb-bin-builder (x86_64-apple-darwin9)
Compilation: x86_64-apple-darwin9-gcc -fast -pipe
Linking : /Volumes/scratch/gentoo/x86_64/usr/bin/x86_64-apple-darwin9-ld -Wl,-dead_strip_dylibs
Comment 16561
Date: 2011-11-16 15:06:42 +0100
From: Viktor Rosenfeld <<24hesk>>
Not sure, if this is related, but if I try to rewrite the query as follows:
SELECT
count(*)
FROM
_rank AS _rank1,
_rank AS _rank2
WHERE
NOT _rank1.pre = _rank2.pre AND
EXISTS (SELECT pre FROM _rank AS ancestor WHERE
ancestor.pre < _rank1.pre AND _rank1.pre < ancestor.post
INTERSECT SELECT pre FROM _rank AS ancestor WHERE
ancestor.pre < _rank2.pre AND _rank2.pre < ancestor.post);
I get another error message: SELECT: no such column '_rank1.pre'
Comment 16638
Date: 2011-12-08 17:17:43 +0100
From: @sjoerdmullender
Changeset 0244e96a2c5e made by Sjoerd Mullender sjoerd@acm.org in the MonetDB repo, refers to this bug.
For complete details, see http//devmonetdborg/hg/MonetDB?cmd=changeset;node=0244e96a2c5e
Changeset description:
Comment 16700
Date: 2011-12-27 15:28:34 +0100
From: @njnes
Changeset 57700c6efacb made by Niels Nes niels@cwi.nl in the MonetDB repo, refers to this bug.
For complete details, see http//devmonetdborg/hg/MonetDB?cmd=changeset;node=57700c6efacb
Changeset description:
Comment 16810
Date: 2012-01-25 10:43:41 +0100
From: Viktor Rosenfeld <<24hesk>>
The original query now works on the latest Dec2011 release. However the version with INTERSECT now throws a new error message: 21000!zero_or_one: cardinality violation (2>1).
I'm using the following query.
SELECT count(*)
FROM rank AS rank1, rank AS rank2
WHERE
rank1.pre IN (1, 3, 5, 6, 8, 13) AND
rank2.pre IN (1, 3, 5, 6, 8, 13) AND
NOT rank1.pre = rank2.pre AND
EXISTS (
SELECT ancestor.pre
FROM rank AS ancestor
WHERE ancestor.pre < rank1.pre AND rank1.pre < ancestor.post
INTERSECT SELECT ancestor.pre
FROM rank AS ancestor
WHERE ancestor.pre < rank2.pre AND rank2.pre < ancestor.post
);
Comment 18799
Date: 2013-06-09 14:17:39 +0200
From: MonetDB Mercurial Repository <>
Changeset 054504135056 made by Niels Nes niels@cwi.nl in the MonetDB repo, refers to this bug.
For complete details, see http//devmonetdborg/hg/MonetDB?cmd=changeset;node=054504135056
Changeset description:
The text was updated successfully, but these errors were encountered: