-- demonstrate problem with extrememly slow join
CREATE TABLE testr (a int, b int) DISTRIBUTE BY REPLICATION;
INSERT INTO testr SELECT generate_series(1, 10000), generate_series(5001, 15000);
-INSERT INTO testh SELECT generate_series(1, 10000), generate_series(8001, 18000);CREATE TABLE testh (a int, b int);
-ERROR: relation "testh" does not exist
-LINE 1: INSERT INTO testh SELECT generate_series(1, 10000), generate...
- ^
+CREATE TABLE testh (a int, b int);
+INSERT INTO testh SELECT generate_series(1, 10000), generate_series(8001, 18000);
set enable_mergejoin TO false;
set enable_hashjoin TO false;
EXPLAIN VERBOSE SELECT count(*) FROM testr WHERE NOT EXISTS (SELECT * FROM testh WHERE testr.b = testh.b);
SELECT count(*) FROM testr WHERE NOT EXISTS (SELECT * FROM testh WHERE testr.b = testh.b);
count
-------
- 10000
+ 3000
(1 row)
-- demonstrate problem with extrememly slow join
CREATE TABLE testr (a int, b int) DISTRIBUTE BY REPLICATION;
INSERT INTO testr SELECT generate_series(1, 10000), generate_series(5001, 15000);
-INSERT INTO testh SELECT generate_series(1, 10000), generate_series(8001, 18000);CREATE TABLE testh (a int, b int);
+CREATE TABLE testh (a int, b int);
+INSERT INTO testh SELECT generate_series(1, 10000), generate_series(8001, 18000);
set enable_mergejoin TO false;
set enable_hashjoin TO false;
EXPLAIN VERBOSE SELECT count(*) FROM testr WHERE NOT EXISTS (SELECT * FROM testh WHERE testr.b = testh.b);