[ https://issues.apache.org/jira/browse/PHOENIX-4999?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Karan Mehta updated PHOENIX-4999: --------------------------------- Summary: Update statistics should not be allowed on tenant specific connection (was: Update statistics should not be allowed on tenant specific connection.) > Update statistics should not be allowed on tenant specific connection > --------------------------------------------------------------------- > > Key: PHOENIX-4999 > URL: https://issues.apache.org/jira/browse/PHOENIX-4999 > Project: Phoenix > Issue Type: Bug > Reporter: Karan Mehta > Assignee: Karan Mehta > Priority: Major > > Update statistics sql would can trigger partial stats collection when ran > using a tenant specific connection. Originally, update statistics internally > runs scans on all the regions of table. TenantId field bounds the scans on > startKey and endKey in tenant specific connection, which can cause stats to > run only on specific regions and result in partial stats collection. > Since the view data and table data reside in the same physical HBase table, > it doesn't make sense to allow users to run stats for specific tenants as > tenants may span across regions. The issue was first identified in > PHOENIX-4333. > The patch however doesn't fully stop the SQL from running. Multiple > approaches can be taken here. > # Unset the tenantId on the connection before update statistics is run and > reset it back later. This can be tricky and bad to implement since tenantId > is essentially a final field on PhoenixConnection. > # As [~tdsilva] pointed out, we can throw an UnsupportedOperationException() > whenever user tries to update statistics on tenant specific connection. > The second option seems straightforward to implement and can prevent > accidental usage of this sql. > [~Bin Shi] [~sukumaddineni] Any thoughts here? -- This message was sent by Atlassian JIRA (v7.6.3#76005)