Dear Álvaro,

Thanks for updating the patch. I have two comments/questions.

01.
```
--- a/src/backend/access/index/genam.c
+++ b/src/backend/access/index/genam.c
@@ -394,6 +394,14 @@ systable_beginscan(Relation heapRelation,
        SysScanDesc sysscan;
        Relation        irel;
 
+       /*
+        * If this backend promised that it won't access shared catalogs during
+        * logical decoding, this it the right place to verify.
+        */
+       Assert(!HistoricSnapshotActive() ||
+                  accessSharedCatalogsInDecoding ||
+                  !heapRelation->rd_rel->relisshared);
```

Not sure it's OK to use Assert(). elog(ERROR) might be better if we want to 
really
avoid the case.

02. SnapBuildProcessRunningXacts

Per my understanding, the db_specic snapshot can be also serialized. Is it
possibility tha normal logical decoding system restores the snapshot and obtain
the wrong result?

Best regards,
Hayato Kuroda
FUJITSU LIMITED

Reply via email to