Uploaded image for project: 'Accumulo'
  1. Accumulo
  2. ACCUMULO-2822

Cannot set instance.volumes w/ MAC

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Cannot Reproduce
    • 1.6.0
    • None
    • None
    • None

    Description

      When trying to run the following, MAC fails to initialize Accumulo.

      public static void main(String args[]){
        MiniDFSCluster dfscluster = 
          new MiniDFSCluster.Builder(new Configuration()).build();
          
        MiniAccumuloConfig macConfig = 
            new MiniAccumuloConfig(new File(args[0]), "secret");
        Map<String, String> site = new HashMap<String, String>();
        site.put("instance.volumes", dfscluster.getURI().toString() + "/accumulo");
        macConfig.setSiteConfig(site);
      
        MiniAccumuloCluster mac = new MiniAccumuloCluster(macConfig);
        mac.start();
      }
      

      I see the following exception in the Intialize out file

      2014-05-16 19:28:13 FATAL Initialize:537 - error talking to zookeeper
      java.lang.RuntimeException: Accumulo not initialized, there is no instance id at /accumulo/instance_id
              at org.apache.accumulo.core.zookeeper.ZooUtil.getInstanceIDFromHdfs(ZooUtil.java:62)
              at org.apache.accumulo.server.client.HdfsZooInstance._getInstanceID(HdfsZooInstance.java:139)
              at org.apache.accumulo.server.client.HdfsZooInstance.getInstanceID(HdfsZooInstance.java:123)
              at org.apache.accumulo.server.conf.ZooConfiguration.getInstance(ZooConfiguration.java:55)
              at org.apache.accumulo.server.conf.ServerConfiguration.getZooConfiguration(ServerConfiguration.java:53)
              at org.apache.accumulo.server.conf.ServerConfiguration.getSystemConfiguration(ServerConfiguration.java:62)
              at org.apache.accumulo.server.fs.VolumeManagerImpl.get(VolumeManagerImpl.java:396)
              at org.apache.accumulo.server.client.HdfsZooInstance._getInstanceID(HdfsZooInstance.java:133)
              at org.apache.accumulo.server.client.HdfsZooInstance.getInstanceID(HdfsZooInstance.java:123)
              at org.apache.accumulo.core.zookeeper.ZooUtil.getRoot(ZooUtil.java:38)
              at org.apache.accumulo.server.util.TablePropUtil.getTablePath(TablePropUtil.java:58)
              at org.apache.accumulo.server.util.TablePropUtil.setTableProperty(TablePropUtil.java:34)
              at org.apache.accumulo.server.init.Initialize.initMetadataConfig(Initialize.java:531)
              at org.apache.accumulo.server.init.Initialize.initMetadataConfig(Initialize.java:543)
              at org.apache.accumulo.server.init.Initialize.initFileSystem(Initialize.java:312)
              at org.apache.accumulo.server.init.Initialize.initialize(Initialize.java:238)
              at org.apache.accumulo.server.init.Initialize.doInit(Initialize.java:220)
              at org.apache.accumulo.server.init.Initialize.main(Initialize.java:630)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:606)
              at org.apache.accumulo.start.Main$1.run(Main.java:141)
              at java.lang.Thread.run(Thread.java:744)
      2014-05-16 19:28:13 FATAL Initialize:240 - Failed to initialize filesystem
      java.io.IOException: java.lang.RuntimeException: Accumulo not initialized, there is no instance id at /accumulo/instance_id
              at org.apache.accumulo.server.init.Initialize.initMetadataConfig(Initialize.java:538)
              at org.apache.accumulo.server.init.Initialize.initMetadataConfig(Initialize.java:543)
              at org.apache.accumulo.server.init.Initialize.initFileSystem(Initialize.java:312)
              at org.apache.accumulo.server.init.Initialize.initialize(Initialize.java:238)
              at org.apache.accumulo.server.init.Initialize.doInit(Initialize.java:220)
              at org.apache.accumulo.server.init.Initialize.main(Initialize.java:630)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:606)
              at org.apache.accumulo.start.Main$1.run(Main.java:141)
              at java.lang.Thread.run(Thread.java:744)
      Caused by: java.lang.RuntimeException: Accumulo not initialized, there is no instance id at /accumulo/instance_id
              at org.apache.accumulo.core.zookeeper.ZooUtil.getInstanceIDFromHdfs(ZooUtil.java:62)
              at org.apache.accumulo.server.client.HdfsZooInstance._getInstanceID(HdfsZooInstance.java:139)
              at org.apache.accumulo.server.client.HdfsZooInstance.getInstanceID(HdfsZooInstance.java:123)
              at org.apache.accumulo.server.conf.ZooConfiguration.getInstance(ZooConfiguration.java:55)
              at org.apache.accumulo.server.conf.ServerConfiguration.getZooConfiguration(ServerConfiguration.java:53)
              at org.apache.accumulo.server.conf.ServerConfiguration.getSystemConfiguration(ServerConfiguration.java:62)
              at org.apache.accumulo.server.fs.VolumeManagerImpl.get(VolumeManagerImpl.java:396)
              at org.apache.accumulo.server.client.HdfsZooInstance._getInstanceID(HdfsZooInstance.java:133)
              at org.apache.accumulo.server.client.HdfsZooInstance.getInstanceID(HdfsZooInstance.java:123)
              at org.apache.accumulo.core.zookeeper.ZooUtil.getRoot(ZooUtil.java:38)
              at org.apache.accumulo.server.util.TablePropUtil.getTablePath(TablePropUtil.java:58)
              at org.apache.accumulo.server.util.TablePropUtil.setTableProperty(TablePropUtil.java:34)
              at org.apache.accumulo.server.init.Initialize.initMetadataConfig(Initialize.java:531)
              ... 11 more
      
      

      If instead of setting instance.volumes I set the following, then it works

        site.put("instance.dfs.uri", dfscluster.getURI().toString());
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            kturner Keith Turner
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: