cshannon opened a new pull request, #5274:
URL: https://github.com/apache/accumulo/pull/5274

   This is a follow on PR to #5187 for Issue #5014
   
   This commit adds the first part of the needed client API changes to support 
setting `TabletMergeability` on splits. Two inital updates have been made to 
support table creation and adding splits later.
   
   1) A new `withSplits(map)` method has been added to `NewTableConfiguration` 
that takes a map of splits and associated `TabletMergeability`. The exiting 
`withSplits(set)` method that takes a set just delegates to the new method and 
sets a default for `TabletMergeability` to never because by default user 
created tables should never be automatically mergeable.
   
   2) A new `putSplits(map)` method has been added that also takes a map and 
will create new splits with an associated `TabletMergeability`. The existing 
`addSplits(set)` method delegates to this as well. **Note:** This method is 
only partially done. The intent is to support updating existing splits as well 
but this will be done in another PR.
   
   The support the changes, where necessary the splits are now encoded with the 
`TabletMergeability` value as json instead of just passing the split bytes.
   
   After this PR is merged there will be at least two more API changes needed 
in another PR (as well as more tests to be written):
   
   1. As mentioned above, `putSplits(map)` will need to be updated to handle 
updating existing splits. This will likely need a new RPC method as this 
functionality doesn't currently exist and the existing fate operation for 
adding splits is designed to fail if splits already exist. We also need to 
somehow handle when some splits exist and some don't.
   2. There needs to be a way to list/query the `TabletMergeability` value for 
existing splits on a table. This could be added to 
[getTabletInformation()](https://github.com/apache/accumulo/blob/428f7c794dc51a4e6641405f108318e38026b127/core/src/main/java/org/apache/accumulo/core/clientImpl/TableOperationsImpl.java#L2223)
 in TableOperations


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to