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

MiniAccumuloCluster getFileSystem doesn't work without MiniDFSCluster

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Trivial
    • Resolution: Incomplete
    • 1.5.2, 1.6.1
    • None
    • mini

    Description

      Tried to get the underlying filesystem from MIniAccumuloClusterImpl#getFileSystem() and got a URISyntaxException

      java.lang.RuntimeException: java.net.URISyntaxException: Expected authority at index 7: file://
      	at org.apache.accumulo.minicluster.impl.MiniAccumuloClusterImpl.getFileSystem(MiniAccumuloClusterImpl.java:729)
      	at org.apache.accumulo.test.MissingWalHeaderCompletesRecoveryIT.test(MissingWalHeaderCompletesRecoveryIT.java:94)
      	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.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
      	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
      	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
      	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
      	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
      	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
      	at org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74)
      Caused by: java.net.URISyntaxException: Expected authority at index 7: file://
      	at java.net.URI$Parser.fail(URI.java:2829)
      	at java.net.URI$Parser.failExpecting(URI.java:2835)
      	at java.net.URI$Parser.parseHierarchical(URI.java:3083)
      	at java.net.URI$Parser.parse(URI.java:3034)
      	at java.net.URI.<init>(URI.java:595)
      	at org.apache.accumulo.minicluster.impl.MiniAccumuloClusterImpl.getFileSystem(MiniAccumuloClusterImpl.java:727)
      	... 12 more
      

      It appears that the two callers of this method within our codebase are using MiniDFSCluster which must work. It would be nice to catch when we are not using MiniDFS and return the LocalFileSystem instead.

      Attachments

        Activity

          People

            Unassigned Unassigned
            elserj Josh Elser
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: