aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/backend/utils/cache/typcache.c2
-rw-r--r--src/backend/utils/time/snapmgr.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/src/backend/utils/cache/typcache.c b/src/backend/utils/cache/typcache.c
index b16ed6a2089..afbe121f7af 100644
--- a/src/backend/utils/cache/typcache.c
+++ b/src/backend/utils/cache/typcache.c
@@ -1021,7 +1021,7 @@ load_enum_cache_data(TypeCacheEntry *tcache)
enum_rel = heap_open(EnumRelationId, AccessShareLock);
enum_scan = systable_beginscan(enum_rel,
EnumTypIdLabelIndexId,
- true, GetTransactionSnapshot(),
+ true, GetLatestSnapshot(),
1, &skey);
while (HeapTupleIsValid(enum_tuple = systable_getnext(enum_scan)))
diff --git a/src/backend/utils/time/snapmgr.c b/src/backend/utils/time/snapmgr.c
index ef66466baf1..5917b014fdc 100644
--- a/src/backend/utils/time/snapmgr.c
+++ b/src/backend/utils/time/snapmgr.c
@@ -167,9 +167,9 @@ GetTransactionSnapshot(void)
Snapshot
GetLatestSnapshot(void)
{
- /* Should not be first call in transaction */
+ /* If first call in transaction, go ahead and set the xact snapshot */
if (!FirstSnapshotSet)
- elog(ERROR, "no snapshot has been set");
+ return GetTransactionSnapshot();
SecondarySnapshot = GetSnapshotData(&SecondarySnapshotData);