[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14559809#comment-14559809 ] James Nowell commented on ACCUMULO-3779: Thanks for the fast help! Created [ACCUMULO-3851|https://issues.apache.org/jira/browse/ACCUMULO-3851] for the documentation/example. Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Labels: 1.7.0_QA Fix For: 1.7.0 Time Spent: 20m Remaining Estimate: 0h Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14559647#comment-14559647 ] Josh Elser commented on ACCUMULO-3779: -- [~jcnowell], thanks for asking. bq. the relationship is unclear (one is deprecating the other for some set of use cases?) accumulo-site.xml is meant for server-side while client.conf is meant for client-side. This is a push towards ensuring a strong delineation between what configuration is present for clients to use and what configuration is present for servers. We can go into this at more length elsewhere. bq. INI style key/value pairs equivalent to accumulo-site.xml It's a [Java properties file|http://en.wikipedia.org/wiki/.properties]. It's a subset of what is present in accumulo-site.xml. The full list of properties are in [ClientProperties|https://github.com/apache/accumulo/blob/68b8cd7c9169c1d2e8eabfb84c9d977c8acc8973/core/src/main/java/org/apache/accumulo/core/client/ClientConfiguration.java#L54]. bq. I can find neither documentation nor an example for client.conf bq. Should I (probably with guidance) make a new Issue for this? Yes, please do. This documentation should've been written when it was introduced in 1.6.0, but it seems like it wasn't. Client-side configuration has been a bit of a moving window throughout 1.6, but I'm convinced that it's the direction we want to move. The most trivial client.conf file you can make is likely: {code} instance.zookeeper.host=localhost:2181 {code} Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Labels: 1.7.0_QA Fix For: 1.7.0 Time Spent: 20m Remaining Estimate: 0h Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14559675#comment-14559675 ] Josh Elser commented on ACCUMULO-3779: -- Well, more completely: {noformat} ${ACCUMULO_CONF_DIR}/client.conf {noformat} or {{~/.accumulo/config}} Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Labels: 1.7.0_QA Fix For: 1.7.0 Time Spent: 20m Remaining Estimate: 0h Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14559628#comment-14559628 ] James Nowell commented on ACCUMULO-3779: The WARN level log message in ClientConfiguration added by this commit alerted me that I'm currently not using this file, but I can find neither documentation nor an example for client.conf. I gather that client.conf and accumulo-site.xml are related in some fashion, but the relationship is unclear (one is deprecating the other for some set of use cases?). Forgive me if this is the wrong place to ask (created a Jira account to ask about this), but what am I supposed to put in this file? INI style key/value pairs equivalent to accumulo-site.xml? A subset of those values required for a client to make a successful connection? Should I (probably with guidance) make a new Issue for this? Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Labels: 1.7.0_QA Fix For: 1.7.0 Time Spent: 20m Remaining Estimate: 0h Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14559663#comment-14559663 ] Christopher Tubbs commented on ACCUMULO-3779: - And the place to put that file is probably ~/.accumulo/ Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Labels: 1.7.0_QA Fix For: 1.7.0 Time Spent: 20m Remaining Estimate: 0h Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14533061#comment-14533061 ] Christopher Tubbs commented on ACCUMULO-3779: - A warning when no client.conf is found seems reasonable, as does adding a template for it. I wonder if the template should be named client.conf.template, though, so it's not automatically used (could interfere with existing deployments if a user has one in a lower-priority location)? I don't remember completely dropping support for fallback to using accumulo-site.xml, but I would be in favor of that, especially if we made it easier to create/use client.conf and warned appropriately. Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Fix For: 1.7.0 Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14533098#comment-14533098 ] Billie Rinaldi commented on ACCUMULO-3779: -- bq. I don't remember completely dropping support for fallback to using accumulo-site.xml We didn't drop it; there seems to be a bug in how it's implemented. Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Fix For: 1.7.0 Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14533082#comment-14533082 ] Josh Elser commented on ACCUMULO-3779: -- bq. I don't remember completely dropping support for fallback to using accumulo-site.xml Neither do I, which is what confused me. Given Billie's assessment, maybe I just didn't notice it? bq. I wonder if the template should be named client.conf.template, though, so it's not automatically used (could interfere with existing deployments if a user has one in a lower-priority location)? You think that's a big concern? The admin would have had to copy that new file from the examples (or the configuration script) into the conf dir. I was thinking that it would only be a concern if someone copies it to a new install and forgets to change it. Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Fix For: 1.7.0 Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14533106#comment-14533106 ] Josh Elser commented on ACCUMULO-3779: -- I believe this is due to ACCUMULO-3465 Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Affects Versions: 1.6.0, 1.6.1, 1.6.2 Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Fix For: 1.7.0 Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14532650#comment-14532650 ] Billie Rinaldi commented on ACCUMULO-3779: -- Looking at Shell.getZooInstance, it doesn't seem like this behavior has changed since 1.6, so it might be a bug in earlier versions too. In particular: {noformat} if (instanceName == null || keepers == null) { ... load from site conf ... if (keepers == null) { keepers = conf.get(Property.INSTANCE_ZK_HOST); } } {noformat} It seems to me that if (keepers == null) should be {noformat} if (keepers == null || keepers.equals(ClientProperty.INSTANCE_ZK_HOST.getDefaultValue())) {noformat} Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Fix For: 1.7.0 Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14533321#comment-14533321 ] Josh Elser commented on ACCUMULO-3779: -- Another facet to this I found: {noformat} [jelser@cn020 accumulo-copy]$ ./bin/accumulo shell -u root -p secret --debug 2015-05-07 13:23:15,437 [zookeeper.ZooUtil] DEBUG: Trying to read instance id from hdfs://cn020:8020/accumulo/instance_id 2015-05-07 13:24:26,317 [tracer.ZooTraceClient] ERROR: Unabled to get destination tracer hosts in ZooKeeper, will retry in 5000 milliseconds java.lang.RuntimeException: Failed to connect to zookeeper (localhost:2181) within 2x zookeeper timeout period 3 at org.apache.accumulo.fate.zookeeper.ZooSession.connect(ZooSession.java:124) at org.apache.accumulo.fate.zookeeper.ZooSession.getSession(ZooSession.java:164) at org.apache.accumulo.fate.zookeeper.ZooReader.getSession(ZooReader.java:43) at org.apache.accumulo.fate.zookeeper.ZooReader.getZooKeeper(ZooReader.java:47) at org.apache.accumulo.fate.zookeeper.ZooReader.exists(ZooReader.java:189) at org.apache.accumulo.tracer.ZooTraceClient.updateHostsFromZooKeeper(ZooTraceClient.java:120) at org.apache.accumulo.tracer.ZooTraceClient$1.run(ZooTraceClient.java:103) at org.apache.accumulo.tracer.ZooTraceClient.setInitialTraceHosts(ZooTraceClient.java:116) at org.apache.accumulo.tracer.ZooTraceClient.init(ZooTraceClient.java:69) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) at org.apache.htrace.SpanReceiverBuilder.build(SpanReceiverBuilder.java:115) at org.apache.accumulo.core.trace.DistributedTrace.loadSpanReceivers(DistributedTrace.java:161) at org.apache.accumulo.core.trace.DistributedTrace.enableTracing(DistributedTrace.java:140) at org.apache.accumulo.core.trace.DistributedTrace.enable(DistributedTrace.java:98) at org.apache.accumulo.shell.Shell.config(Shell.java:358) at org.apache.accumulo.shell.Shell.execute(Shell.java:576) at org.apache.accumulo.start.Main$1.run(Main.java:93) at java.lang.Thread.run(Thread.java:745) {noformat} The tracer might hang because it only observes the client.conf. Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Fix For: 1.7.0 Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14533052#comment-14533052 ] Josh Elser commented on ACCUMULO-3779: -- I'm wondering if the best change is to just add a template for the client.conf in with the rest of the templates and then add a warning when a client.conf isn't found? Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Fix For: 1.7.0 Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (ACCUMULO-3779) Shell fails to connect to ZooKeeper when client.conf doesn't exist
[ https://issues.apache.org/jira/browse/ACCUMULO-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14531980#comment-14531980 ] Josh Elser commented on ACCUMULO-3779: -- ping [~billie.rinaldi] and [~ctubbsii] as they might remember something I don't. Shell fails to connect to ZooKeeper when client.conf doesn't exist -- Key: ACCUMULO-3779 URL: https://issues.apache.org/jira/browse/ACCUMULO-3779 Project: Accumulo Issue Type: Bug Components: shell Reporter: Josh Elser Assignee: Josh Elser Priority: Blocker Fix For: 1.7.0 Stood up 1.7.0, forgot to make a client.conf (there wasn't a template included in the example confs). Tried to connect to the shell and it just timed out trying to talk to ZooKeeper at the default host of localhost:2181. I feel like this is a regression against 1.6 because things used to attempt to work by trying to read accumulo-site.xml. If we are intentionally not supporting automatic fallback to accumulo-site.xml, we should have a log message that informs the user when we construct a ClientConfiguration without any actual configuration (as that's likely an error). -- This message was sent by Atlassian JIRA (v6.3.4#6332)