Dear Euler, Sorry for posting e-mail each other. I will read your patch but I want to reply one of yours.
> I started reviewing v16-0007 but didn't finish yet. The general idea is ok. However, I'm still worried about preventing some use cases if it provides only the local connection option. What if you want to keep monitoring this instance while the transformation is happening? Let's say it has a backlog that will take some time to apply. Unless, you have a local agent, you have no data about this server until pg_createsubscriber terminates. Even the local agent might not connect to the server unless you use the current port. > (IIUC, 0007 could not overwrite a port number - refactoring is needed) Ah, actually I did not have such a point of view. Assuming that changed port number can avoid connection establishments, there are four options: a) Does not overwrite port and listen_addresses. This allows us to monitor by external agents, but someone can modify GUCs and data during operations. b) Overwrite port but do not do listen_addresses. Not sure it is useful... c) Overwrite listen_addresses but do not do port. This allows us to monitor by local agents, and we can partially protect the database. But there is still a room. d) Overwrite both port and listen_addresses. This can protect databases perfectly but no one can monitor. Hmm, which one should be chosen? I prefer c) or d). Do you know how pglogical_create_subscriber does? Best Regards, Hayato Kuroda FUJITSU LIMITED https://www.fujitsu.com/global/