> "When logical replication of a table starts, PostgreSQL typically > takes a snapshot of the table's data on the publisher database and > copies it to the subscriber." > > This makes it clear that "typically" refers to the snapshot-taking > process, not the timing of replication's start. > ------ > > ====== > [1] https://github.com/postgres/postgres/commit/4c4aaa19a6fed39e0eb0247625331c3df34d8211 >
Hi Bruce, There was no reply yet to my 3-week-old post above regarding (what I thought was) the misplaced word "typically" so I am bumping this thread, just in case that post was accidentally overlooked. OTOH, if you disagree and/or don't plan to modify it, please let me know so I can take this thread off my watch list.
Not Bruce here.
I concur with this specific wording observation but feel it points to a larger problem (typically typically does this...).
The whole paragraph seems to boil down to, and would better worded as:
"By default PostgreSQL initiates "transactional replication", whereby when logical replication begins on each published table PostgreSQL takes a snapshot and copies those now-static contents to the subscriber. blah-blah-blah..."
Which begs the question, what about non-transactional replication?
I think we are using "typically" where "default" should be used and then failing to describe the non-default/non-typical behaviors that also apparently exist.
I believe this basically boils down to "copy data? true or false" but haven't tried to reason out enough to be confident in a rewrite that gets rid of the "typically" with the more definite "default" and mentions the alternative(s).
I do get we are on the overview page but if we use either typically or default we still need to lead the reader to the alternatives/knobs even if it's just a link deeper into the Chapter.
I also get that not everyone uses the term "transactional replication" but it's our documentation and we should not be afraid to give the process a label. If we want to mention aliases as an aside that can be considered as needed.