[ 
https://issues.apache.org/jira/browse/PHOENIX-7949?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Kyle Purtell updated PHOENIX-7949:
-----------------------------------------
    Description: {{IndexScrutinyWithMaxLookbackIT}} asserted an outcome that is 
unreachable. It updated only the covered column of a row and expected scrutiny 
to count it as {{BEYOND_MAX_LOOKBACK}}, but an in-place covered column update 
leaves the indexed column and thus the index row key unchanged, so the index 
row is never deleted. Major compaction retains the pre-update version as the 
row version visible at the lower edge of the max lookback window, and 
{{IndexScrutinyTool}} refuses to scan at an SCN older than max lookback. The 
fix adds {{@Category(NeedsOwnMiniClusterTest.class)}} and replaces the two 
invalid test cases with {{testScrutinyOnUpdatedRowsWithinMaxLookbackAreValid}} 
and {{testScrutinyOnUpdatedViewIndexRowsWithinMaxLookbackAreValid}}, which 
assert the correct invariants with the rationale documented in inline comments, 
while leaving {{testScrutinyOnDeletedRowsBeyondMaxLookBack}} unchanged.

> IndexScrutinyWithMaxLookbackIT scrutiny at SCN beyond max lookback counts 
> updated rows as VALID
> -----------------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-7949
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-7949
>             Project: Phoenix
>          Issue Type: Sub-task
>          Components: core, test
>            Reporter: Andrew Kyle Purtell
>            Assignee: Andrew Kyle Purtell
>            Priority: Major
>
> {{IndexScrutinyWithMaxLookbackIT}} asserted an outcome that is unreachable. 
> It updated only the covered column of a row and expected scrutiny to count it 
> as {{BEYOND_MAX_LOOKBACK}}, but an in-place covered column update leaves the 
> indexed column and thus the index row key unchanged, so the index row is 
> never deleted. Major compaction retains the pre-update version as the row 
> version visible at the lower edge of the max lookback window, and 
> {{IndexScrutinyTool}} refuses to scan at an SCN older than max lookback. The 
> fix adds {{@Category(NeedsOwnMiniClusterTest.class)}} and replaces the two 
> invalid test cases with 
> {{testScrutinyOnUpdatedRowsWithinMaxLookbackAreValid}} and 
> {{testScrutinyOnUpdatedViewIndexRowsWithinMaxLookbackAreValid}}, which assert 
> the correct invariants with the rationale documented in inline comments, 
> while leaving {{testScrutinyOnDeletedRowsBeyondMaxLookBack}} unchanged.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to