Re: BUG: deadlock between autovacuum worker and client backend during removal of orphan temp tables with sequences

Akshat Jaimini <destrex271@gmail.com>

From: Akshat Jaimini <destrex271@gmail.com>
To: pgsql-hackers@lists.postgresql.org
Cc: Mikhail Zhilin <m.zhilin@postgrespro.ru>
Date: 2024-03-29T10:31:01Z
Lists: pgsql-bugs, pgsql-hackers
The following review has been posted through the commitfest application:
make installcheck-world:  tested, failed
Implements feature:       tested, passed
Spec compliant:           tested, passed
Documentation:            tested, passed

Hii,

Thanks for the updated patch. I ran make installcheck-world after applying the patch and recompiling it. It did fail for a particular test but from the logs it seems to be unrelated to this particular patch since it fails for the following:

==========================
select error_trap_test();
-      error_trap_test      
----------------------------
- division_by_zero detected
-(1 row)
-
+ERROR:  cannot start subtransactions during a parallel operation
+CONTEXT:  PL/pgSQL function error_trap_test() line 2 during statement block entry
+parallel worker
 reset debug_parallel_query;
 drop function error_trap_test();
 drop function zero_divide();
==========================

The code seems to implement the feature and has good and explanatory comments associated with it.
I believe we can go ahead with committing patch although I would request some senior contributors to also take a look at this patch since I am relatively new to patch reviews.
Changing the status to 'Ready for Committer'.

Regards,
Akshat Jaimini

The new status of this patch is: Ready for Committer

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Avoid deadlock during orphan temp table removal.