Uh oh!
There was an error while loading. Please reload this page.
PHOENIX-6437: Parent-Child Delete marker should get replicated via Sy… - #1219
Conversation
…stemCatalogWALEntryFilter
ankitjain64
commented
May 3, 2021
With this PR we are fixing the bug where delete markers for parent-child link rows do not get replicated via SystemCatalogWalEntry Filter for tenant views. |
Uh oh!
There was an error while loading. Please reload this page.
| if (CellUtil.matchingValue(cell, CHILD_TABLE_BYTES)) { | ||
| // Check if cell is of type LINK_TYPE with value 4 or DeleteFamily | ||
| if ((isChildLink && CellUtil.matchingValue(cell, CHILD_TABLE_BYTES)) || | ||
| CellUtil.isDeleteFamily(cell) ) { |
There was a problem hiding this comment.
this logic means you will replicate whenever it's a DeleteFamily cell, regardless of childlink or not. Is this the intention?
There was a problem hiding this comment.
To replicate a delete marker we are using two checks.
- The cell is of type
DeleteFamily. - The length for
COLUMN_NAMEis greater than0. (For tenant views column_name is populated with tenant_id which is not the case for global views.)
One may argue that the above two checks are also true for delete markers of column rows and we may over-replicate those rows. But, we are avoiding all those scenarios by doing the above filtering only for the mutations belonging to SYSTEM.CHILD_LINK table. With 4.15+ we are assured that SYSTEM.CHILD_LINK table only stores parent-child linking rows with LINK_TYPE=4, so the only thing we need to differentiate here is parent-child link delete markers for tenant vs non-tenant view. Let me know if you still feel we are missing any scenario. Thanks
stoty
commented
May 4, 2021
💔 -1 overall
This message was automatically generated. |
gjacoby126
left a comment
There was a problem hiding this comment.
+1, thanks @ankitjain64
#1219) * PHOENIX-6437: Parent-Child Delete marker should get replicated via SystemCatalogWALEntryFilter Co-authored-by: Ankit Jain <jainankit@salesforce.com>
#1219) * PHOENIX-6437: Parent-Child Delete marker should get replicated via SystemCatalogWALEntryFilter Co-authored-by: Ankit Jain <jainankit@salesforce.com>
apache#1219) (apache#650) * PHOENIX-6437: Parent-Child Delete marker should get replicated via SystemCatalogWALEntryFilter
…stemCatalogWALEntryFilter