Dear Amit,
> In logical replication, it can happen today as well without
> time-delayed replication. Basically, say apply worker is waiting to
> acquire some lock that is already acquired by some backend then it
> will have the same behavior. I have not verified this, so you may want
> to check it once.
Right, I could reproduce the scenario with following steps.
1. Construct pub -> sub logical replication system with streaming = off.
2. Define a table on both nodes.
```
CREATE TABLE tbl (id int PRIMARY KEY);
```
3. Execute concurrent transactions.
Tx-1 (on subscriber)
BEGIN;
INSERT INTO tbl SELECT i FROM generate_series(1, 5000) s(i);
Tx-2 (on publisher)
INSERT INTO tbl SELECT i FROM generate_series(1, 5000) s(i);
4. Try to shutdown publisher but it will be failed.
```
$ pg_ctl stop -D publisher
waiting for server to shut down............................................................... failed
pg_ctl: server does not shut down
```
Best Regards,
Hayato Kuroda
FUJITSU LIMITED