diff options
author | Simon Riggs | 2012-12-02 20:52:52 +0000 |
---|---|---|
committer | Simon Riggs | 2012-12-02 20:52:52 +0000 |
commit | 5457a130d3a66db807d1e0ee2b8e829321809b83 (patch) | |
tree | ad4eff3fe8a04395e6ea87accc39b1ea66adbb2f /src/backend/commands | |
parent | 3114cb60a1a3f482724adaed4ca17572c5e6bde7 (diff) |
Reduce scope of changes for COPY FREEZE.
Allow support only for freezing tuples by explicit
command. Previous coding mistakenly extended
slightly beyond what was agreed as correct on -hackers.
So essentially a partial revoke of earlier work,
leaving just the COPY FREEZE command.
Diffstat (limited to 'src/backend/commands')
-rw-r--r-- | src/backend/commands/copy.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c index 479c4cb17d6..09f40667f68 100644 --- a/src/backend/commands/copy.c +++ b/src/backend/commands/copy.c @@ -1994,14 +1994,11 @@ CopyFrom(CopyState cstate) * which subtransaction created it is crucial for correctness * of this optimisation. */ - if (ThereAreNoPriorRegisteredSnapshots() && + if (cstate->freeze && + ThereAreNoPriorRegisteredSnapshots() && ThereAreNoReadyPortals() && cstate->rel->rd_newRelfilenodeSubid == GetCurrentSubTransactionId()) - { - hi_options |= HEAP_INSERT_COMMITTED; - if (cstate->freeze) - hi_options |= HEAP_INSERT_FROZEN; - } + hi_options |= HEAP_INSERT_FROZEN; } if (cstate->freeze && (hi_options & HEAP_INSERT_FROZEN) == 0) |