On 2020-03-30 17:42, Amit Langote wrote:
I have updated the comments in apply_handle_tuple_routing() (see 0002)
to better explain what's going on with UPDATE handling.  I also
rearranged the tests a bit for clarity.

Attached updated patches.

Test coverage for 0002 is still a bit lacking. Please do a coverage build yourself and get at least one test case to exercise every branch in apply_handle_tuple_routing(). Right now, I don't see any coverage for updates without attribute remapping and updates that don't move to a new partition.

Also, the coverage report reveals that in logicalrep_partmap_init(), the patch is mistakenly initializing LogicalRepRelMapContext instead of LogicalRepPartMapContext. (Hmm, how does it even work like that?)

I think apart from some of these details, this patch is okay, but I don't have deep experience in the partitioning code, I can just see that it looks like other code elsewhere. Perhaps someone with more knowledge can give this a look as well.

About patch 0003, I was talking to some people offline about the name of the option. There was some confusion about using the term "schema". How about naming it "publish_via_partition_root", which also matches the name of the analogous option in pg_dump.

Code coverage here could also be improved. A lot of the new code in pgoutput.c is not tested.

--
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


Reply via email to