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

Andrew Kyle Purtell updated PHOENIX-7932:
-----------------------------------------
    Description: 
{{GlobalIndexCheckerIT}} family ({{GlobalIndexCheckerIT}}, 
{{GlobalIndexCheckerEventualIT}}, {{GlobalIndexCheckerEventualGenerateIT}}):

- A functional index match overwrites the index rule. We need to be able to 
support {{'/* rule, matches <expr> */'}} Disclose both via a new first class 
{{functionalMatch}} field in {{ExplainPlanAttributes}}. {{recordDecision()}} 
keeps {{rule}} as reason and records {{functionalMatch = matches(<expr>)}} 
independently.

- When {{CONSISTENCY}}={{EVENTUAL}}, a companion CDC index for the user index 
is auto-created, so at the {{noIndexQuery}} point in 
{{testPhoenixRowTimestamp}}, the {{NO_INDEX}} hint rejects two candidates, not 
one. Distinguish with {{GlobalIndexCheckerIT.isEventualConsistency()}}, default 
{{false}}, overridden where required.

{{UncoveredGlobalIndexRegionScanner}}, {{UncoveredGlobalIndexRegionScanner2}}:

- Re-baseline tests after functional match disclosure changes. Add a private 
hint-aware helper to discriminate between plain and functional index matches.


  was:
{{GlobalIndexCheckerIT}} family ({{GlobalIndexCheckerIT}}, 
{{GlobalIndexCheckerEventualIT}}, {{GlobalIndexCheckerEventualGenerateIT}}):

- A functional index match overwrites the index rule. We need to be able to 
support {{'/* rule, matches <expr> */'}} Disclose both via a new first class 
{{functionalMatch}} field in {{ExplainPlanAttributes}}. {{recordDecision()}} 
keeps {{rule}} as reason and records {{functionalMatch = matches(<expr>)}} 
independently.

- When {{CONSISTENCY}}={{EVENTUAL}}, a companion CDC index for the user index 
is auto-created, so at the {{noIndexQuery}} point in 
{{testPhoenixRowTimestamp}}, the {{NO_INDEX}} hint rejects two candidates, not 
one. Distinguish with {{GlobalIndexCheckerIT.isEventualConsistency()}}, default 
{{false}}, overridden where required.


> Sweep tests for remaining EXPLAIN improvement issues
> ----------------------------------------------------
>
>                 Key: PHOENIX-7932
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-7932
>             Project: Phoenix
>          Issue Type: Sub-task
>            Reporter: Andrew Kyle Purtell
>            Assignee: Andrew Kyle Purtell
>            Priority: Major
>             Fix For: PHOENIX-7876-feature
>
>
> {{GlobalIndexCheckerIT}} family ({{GlobalIndexCheckerIT}}, 
> {{GlobalIndexCheckerEventualIT}}, {{GlobalIndexCheckerEventualGenerateIT}}):
> - A functional index match overwrites the index rule. We need to be able to 
> support {{'/* rule, matches <expr> */'}} Disclose both via a new first class 
> {{functionalMatch}} field in {{ExplainPlanAttributes}}. {{recordDecision()}} 
> keeps {{rule}} as reason and records {{functionalMatch = matches(<expr>)}} 
> independently.
> - When {{CONSISTENCY}}={{EVENTUAL}}, a companion CDC index for the user index 
> is auto-created, so at the {{noIndexQuery}} point in 
> {{testPhoenixRowTimestamp}}, the {{NO_INDEX}} hint rejects two candidates, 
> not one. Distinguish with {{GlobalIndexCheckerIT.isEventualConsistency()}}, 
> default {{false}}, overridden where required.
> {{UncoveredGlobalIndexRegionScanner}}, {{UncoveredGlobalIndexRegionScanner2}}:
> - Re-baseline tests after functional match disclosure changes. Add a private 
> hint-aware helper to discriminate between plain and functional index matches.



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

Reply via email to