Consider the test case below. It is unexpected that the second query returns NULL, NULL, as the first query returns NULL, 1, and the subsequent queries with WHERE filter shouldn't return any extra row.
DROP TABLE t0;
DROP TABLE t1;
CREATE TABLE t0(c0 VARCHAR(500));
CREATE TABLE t1(c0 INTEGER, c1 INTEGER);
INSERT INTO t1 (c0) VALUES (1);
INSERT INTO t1 (c1) VALUES (2);
INSERT INTO t0 (c0) VALUES ('a');
SELECT t1.c0 FROM t1 LEFT JOIN t0 ON t1.c1; -- NULL, 1
SELECT t1.c0 FROM t1 LEFT JOIN t0 ON t1.c1 WHERE (NOT NULL) UNION ALL SELECT t1.c0 FROM t1 LEFT JOIN t0 ON t1.c1 WHERE ((NULL) IS NULL);
-- Expected: NULL, 1
-- Actual: NULL, NULL
-- This query works as expected
SELECT t1.c0 FROM t1 LEFT JOIN t0 ON t1.c1 WHERE ((NULL) IS NULL); -- NULL, 1
I build docker image following this: https://github.com/openlink/vos-reference-docker. Kindly inform me if I did something wrong or I should provide more information.
Here's the version:
[vos-reference/develop/7]
This Docker image is using the following version of Virtuoso:
Virtuoso Open Source Edition (Column Store) (multi threaded)
Version 7.2.12-dev.3238-pthreads as of Jan 19 2024 (b361275)
Compiled for Linux (x86_64-pc-linux-gnu)
Copyright (C) 1998-2024 OpenLink Software
Consider the test case below. It is unexpected that the second query returns
NULL, NULL, as the first query returnsNULL, 1, and the subsequent queries withWHEREfilter shouldn't return any extra row.I build docker image following this: https://github.com/openlink/vos-reference-docker. Kindly inform me if I did something wrong or I should provide more information.
Here's the version: