[ https://issues.apache.org/jira/browse/PHOENIX-4531?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16331630#comment-16331630 ]
Vincent Poon commented on PHOENIX-4531: --------------------------------------- [~jamestaylor] The hint was not using the data table because the optimizer chooses the smaller table (fewest non-pk columns), which is generally the index. It also turns out that the logic was flipped for interpreting the hint. I attached a v3 patch that has your patch plus: * -Changes to QueryOptimizer that resolves the above. I only compare table size for queries that don't have a DATA_OVER_INDEX hint. The rest of the logic stays the same such that a WHERE clause would cause the index to still be used. * Added a test in QueryOptimizerTest * Added my test in PartialIndexRebuilderIT to test that the index gets disabled properly when there's a write failure to the index when issuing deletes. > Delete on a table with a global mutable index can issue client-side deletes > against the index > --------------------------------------------------------------------------------------------- > > Key: PHOENIX-4531 > URL: https://issues.apache.org/jira/browse/PHOENIX-4531 > Project: Phoenix > Issue Type: Bug > Affects Versions: 4.13.0 > Environment: > Reporter: Vincent Poon > Assignee: Vincent Poon > Priority: Major > Attachments: PHOENIX-4531.v1.master.patch, > PHOENIX-4531.v3.master.patch, PHOENIX-4531_v1.patch, PHOENIX-4531_v2.patch, > PartialIndexRebuilderIT.java > > > For a table with a global mutable index, I found the following result in > client-side deletes against both the data table and index table. > "DELETE FROM data_table" > "DELETE FROM data_table WHERE indexed_col='v'" > We only need the delete to be issued against the data table, because > 1) It's redundant since a delete against the index will be issued on the > server side when we process the delete of the data table row > 2) Deletes issued from the client-side won't have the index failure policy -- This message was sent by Atlassian JIRA (v7.6.3#76005)