accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christopher Tubbs (JIRA)" <>
Subject [jira] [Commented] (ACCUMULO-3604) connector.instanceOperations().setSystemProperty(String,String) returns silently for non-changeable ZK Property's
Date Thu, 21 May 2015 22:33:18 GMT


Christopher Tubbs commented on ACCUMULO-3604:

bq. The notion of only some properties being ZK-modifiable is undefined? 

No. The behavior when one attempts to modify an unchangeable property is presently undefined.

bq. I'd say that's a deficiency in our public API that should be rectified.

So would I. I never said it wasn't a deficiency. My point was simply that the deficiency may
not be a *bug*. It could just be considered undesirable behavior, with room for improvement.

bq.  A method silently returning success when it does nothing sounds like a bug to me.

Counter-example: {{mkdir -p}} on an existing directory. When considering whether it is a bug,
what matters more is not whether it *does* something, but whether it is *expected to do* something.
Expectation is best identified in documentation. Since this method lacks such documentation,
the behavior is undefined.

As I said, "it's not clear to me" whether or not it is a "bug" (or some other kind of shortcoming),
but that seems more of a semantic debate. Regardless, the important thing to consider here
is that it changes existing behavior of a public API method in breaking ways, and that deserves
careful consideration.

bq. I don't think I agree with you that it's not suitable for bug-fix lines

But I never said that. I said I bumped it because it wasn't clear to me. What is clear is
that it isn't ready for application to the older bugfix releases I'm triaging tickets in preparation
for (namely, 1.5.3 and 1.6.3), and wouldn't even apply cleanly on them anyway. So, I just
dropped them (instead of replacing them with 1.5.4 and 1.6.4). I also dropped 1.7.1, but that
was more of a matter of momentum, but I figured it would be fine, pending further discussion
in the interim until the patch is actually ready.

> connector.instanceOperations().setSystemProperty(String,String) returns silently for
non-changeable ZK Property's
> -----------------------------------------------------------------------------------------------------------------
>                 Key: ACCUMULO-3604
>                 URL:
>             Project: Accumulo
>          Issue Type: Bug
>          Components: master
>    Affects Versions: 1.5.0, 1.5.1, 1.5.2, 1.6.0, 1.6.1, 1.6.2
>            Reporter: Josh Elser
>            Assignee: Jeffrey S Schwartz
>              Labels: newbie, summit2015
>             Fix For: 1.8.0
>         Attachments: ACCUMULO-3604.patch
> Only a subset of the configuration {{Property}}'s in Accumulo are modifiable via ZooKeeper
(defined by {{Property.isValidZooProperty}}).
> {{connector.instanceOperations().setProperty(String,String)}} updates the provided property
name with the given value in ZooKeeper. The thing that is never mentioned is that only a subset
of the properties in Accumulo are allowed to be overriden in ZooKeeper. Furthermore, the user
receives no indication that their call failed.
> The Javadoc on {{setSystemProperty(String,String)}} should be updated to inform the users
that only some properties can be changed by this method, and some information should be returned
back to the user to let them know that their call did not succeed (likely an Exception).

This message was sent by Atlassian JIRA

View raw message