keith-turner commented on PR #2799:
URL: https://github.com/apache/accumulo/pull/2799#issuecomment-1239301247
> I took @keith-turner's suggestion and went ahead and updated the
modifyProperties() methods to retry on concurrent modification exceptions up to
5 times before giving up and propagating the exception back to the caller of
the method.
@cshannon where in the code does it retry 5 times? I looked around for this
and did not see it. A lot of things in Accumulo retry forever unless
explicitly given a timeout. I think retrying 5 times is hard to reason about
for a user, especially someone who just wants to props to be set and are not
too concerned w/ how long it takes. They would have to write the code to retry
and it would probably not be as optimal as if Accumulo was retrying (like a
user could not optimally implement exponential back-off on top of code that
does some sort of retrying on its own).
> I reverted the changes Emily did to the Config command. It doesn't really
make sense to try and mutate multiple properties at once with a command since
it would blow stuff away. If we do want to have a command I would think we
would need an entirely new command (not mess with the current one) and that is
probably best with a follow on PR. Maybe we just have a way to script or upload
a set of properties.
I think it does make sense to update the shell command in a separate PR. It
would be good to attempt that before any release that has this new API as a it
will help validate the new API. We could possibly update the shell command to
support a conditional update with this new API. Something like update props
p1=v11,p2=v21, etc only if the current props are p1=v1 and p2=v2. This would
allow a user to do the following.
* print the current props
* create a command that updates props only if those props have the values
they saw when they printed.
--
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]