aboutsummaryrefslogtreecommitdiff
path: root/src/backend/jit/llvm/llvmjit_error.cpp
diff options
context:
space:
mode:
authorAmit Kapila <akapila@postgresql.org>2022-02-04 07:30:40 +0530
committerAmit Kapila <akapila@postgresql.org>2022-02-04 07:30:40 +0530
commit7f481b8d3884445b3839e402bf6d156e458ffeb6 (patch)
treed2a24b7272edc3f57042c64bf154c3003801fcee /src/backend/jit/llvm/llvmjit_error.cpp
parent00c360a89c1ab5ced2b07e2f531998fa6842f194 (diff)
downloadpostgresql-7f481b8d3884445b3839e402bf6d156e458ffeb6.tar.gz
postgresql-7f481b8d3884445b3839e402bf6d156e458ffeb6.zip
Improve invalidation handling in pgoutput.c.
Fix the following issues in pgoutput.c: * rel_sync_cache_relation_cb does the wrong thing when called for a cache flush (i.e., relid == 0). Instead of invalidating all RelationSyncCache entries as it should, it does nothing. * When rel_sync_cache_relation_cb does invalidate an entry, it immediately zaps the entry->map structure, even though that might still be in use. We instead just mark the entry as invalid and rebuild it at a later safe point. * Similarly, rel_sync_cache_publication_cb is way too eager to reset the pubactions flags, which would likely lead to failing to transmit changes that we should transmit. In this case also, we just mark the entry as invalid and rebuild it at a later safe point. Author: Tom Lane Reviewed-by: Amit Kapila Discussion: https://postgr.es/m/885288.1641420714@sss.pgh.pa.us
Diffstat (limited to 'src/backend/jit/llvm/llvmjit_error.cpp')
0 files changed, 0 insertions, 0 deletions