Logical slot creation must wait for all in-progress write transactions to complete before it can establish a consistent decoding point. This is not a lock conflict — the slot creation simply waits until the transaction horizon advances. Long-running transactions or idle-in-transaction sessions delay this indefinitely.
SELECT pid, state, now() - query_start AS duration, query FROM pg_stat_activity WHERE state != 'idle' ORDER BY duration DESC;SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE state = 'idle in transaction' AND query_start < now() - interval '5 min';