提交 fd602f46 编写于 作者: E Ekta Khanna 提交者: David Kimura

Revert "Temporary workaround to make qp_dml_joins deterministic"

A proper fix to ensure that a QE writer signals QE readers before
aborting a transaction is made in PR #6089.  The temporary workaround
is no longer necessary.

This reverts commit b6dd73a4.
Co-authored-by: NAsim R P <apraveen@pivotal.io>
上级 dc906b6c
......@@ -3125,14 +3125,6 @@ SELECT SUM(b) FROM dml_heap_pt_r;
(1 row)
ALTER TABLE dml_heap_pt_r ADD DEFAULT partition def;
-- Temporary workaround to make the error reported by the following
-- update statement deterministic. Without the savepoint, a QE reader
-- may continue performing its part of the plan even after its writer
-- has finished aborting the transaction. This would lead to
-- occasional "relation not found for OID ..." errors because the
-- default partition would have been dropped as part of writer's abort
-- processing.
SAVEPOINT sp1;
UPDATE dml_heap_pt_r SET a = DEFAULT, b = DEFAULT;
ERROR: cross-partition or multi-update to a row (seg1 10.152.10.75:25433 pid=28939)
SELECT SUM(a) FROM dml_heap_pt_r;
......@@ -3286,14 +3278,6 @@ SELECT * FROM dml_heap_pt_r WHERE a = 1;
(1 row)
ALTER TABLE dml_heap_pt_r ADD DEFAULT partition def;
-- Temporary workaround to make the error reported by the following
-- update statement deterministic. Without the savepoint, a QE reader
-- may continue performing its part of the plan even after its writer
-- has finished aborting the transaction. This would lead to
-- occasional "relation not found for OID ..." errors because the
-- default partition would have been dropped as part of writer's abort
-- processing.
SAVEPOINT sp1;
UPDATE dml_heap_pt_r SET a = dml_heap_pt_s.a + 10 ,b = NULL FROM dml_heap_pt_s WHERE dml_heap_pt_r.a + 2= dml_heap_pt_s.b;
ERROR: cross-partition or multi-update to a row (seg2 10.152.10.75:25434 pid=14697)
SELECT * FROM dml_heap_pt_r WHERE a = 11 ORDER BY 1,2;
......
......@@ -3129,14 +3129,6 @@ SELECT SUM(b) FROM dml_heap_pt_r;
(1 row)
ALTER TABLE dml_heap_pt_r ADD DEFAULT partition def;
-- Temporary workaround to make the error reported by the following
-- update statement deterministic. Without the savepoint, a QE reader
-- may continue performing its part of the plan even after its writer
-- has finished aborting the transaction. This would lead to
-- occasional "relation not found for OID ..." errors because the
-- default partition would have been dropped as part of writer's abort
-- processing.
SAVEPOINT sp1;
UPDATE dml_heap_pt_r SET a = DEFAULT, b = DEFAULT;
SELECT SUM(a) FROM dml_heap_pt_r;
sum
......@@ -3297,14 +3289,6 @@ SELECT * FROM dml_heap_pt_r WHERE a = 1;
(1 row)
ALTER TABLE dml_heap_pt_r ADD DEFAULT partition def;
-- Temporary workaround to make the error reported by the following
-- update statement deterministic. Without the savepoint, a QE reader
-- may continue performing its part of the plan even after its writer
-- has finished aborting the transaction. This would lead to
-- occasional "relation not found for OID ..." errors because the
-- default partition would have been dropped as part of writer's abort
-- processing.
SAVEPOINT sp1;
UPDATE dml_heap_pt_r SET a = dml_heap_pt_s.a + 10 ,b = NULL FROM dml_heap_pt_s WHERE dml_heap_pt_r.a + 2= dml_heap_pt_s.b;
ERROR: cross-partition or multi-update to a row
SELECT * FROM dml_heap_pt_r WHERE a = 11 ORDER BY 1,2;
......
......@@ -1352,16 +1352,6 @@ begin;
SELECT SUM(a) FROM dml_heap_pt_r;
SELECT SUM(b) FROM dml_heap_pt_r;
ALTER TABLE dml_heap_pt_r ADD DEFAULT partition def;
-- Temporary workaround to make the error reported by the following
-- update statement deterministic. Without the savepoint, a QE reader
-- may continue performing its part of the plan even after its writer
-- has finished aborting the transaction. This would lead to
-- occasional "relation not found for OID ..." errors because the
-- default partition would have been dropped as part of writer's abort
-- processing.
SAVEPOINT sp1;
UPDATE dml_heap_pt_r SET a = DEFAULT, b = DEFAULT;
SELECT SUM(a) FROM dml_heap_pt_r;
SELECT SUM(b) FROM dml_heap_pt_r;
......@@ -1427,16 +1417,6 @@ SELECT COUNT(*) FROM dml_heap_pt_r WHERE b is NULL;
SELECT dml_heap_pt_s.a + 10 FROM dml_heap_pt_r,dml_heap_pt_s WHERE dml_heap_pt_r.a = dml_heap_pt_s.a ORDER BY 1 LIMIT 1;
SELECT * FROM dml_heap_pt_r WHERE a = 1;
ALTER TABLE dml_heap_pt_r ADD DEFAULT partition def;
-- Temporary workaround to make the error reported by the following
-- update statement deterministic. Without the savepoint, a QE reader
-- may continue performing its part of the plan even after its writer
-- has finished aborting the transaction. This would lead to
-- occasional "relation not found for OID ..." errors because the
-- default partition would have been dropped as part of writer's abort
-- processing.
SAVEPOINT sp1;
UPDATE dml_heap_pt_r SET a = dml_heap_pt_s.a + 10 ,b = NULL FROM dml_heap_pt_s WHERE dml_heap_pt_r.a + 2= dml_heap_pt_s.b;
SELECT * FROM dml_heap_pt_r WHERE a = 11 ORDER BY 1,2;
SELECT COUNT(*) FROM dml_heap_pt_r WHERE b is NULL;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册