Accumulo
  1. Accumulo
  2. ACCUMULO-182

documented the need to create the write-ahead logs directory

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.3.5
    • Fix Version/s: 1.3.6
    • Component/s: client
    • Labels:
      None
    • Environment:

      CentOS release 5.6
      single node Accumulo setup

      Description

      I am following the Accumulo 1.3 manual for basic admin with version 1.3.5rc7 on CentOS release 5.6:

      I can't create a user table.

      http://incubator.apache.org/accumulo/user_manual_1.3-incubating/Accumulo_Shell.html#Basic_Administration

      In a single node setup, I can run the accumulo shell, create a user, and grant privileges to user (like creating a table). I can't create a table as either root or another user.

      For example, running 'createtable mytable' the shell doesn't provide any response and after some time provides this warning:

      23 14:12:04,026 [impl.ThriftTransportPool] WARN : Thread "shell" stuck on IO to localhost:9999:9999 (0) for at least 120478 ms

      Looking through the logs, I don't see any errors regarding the master or port 9999, but there are errors in the logs:

      -------------------------------------------------------------------------------------------------------------------

      gc_server1.bericotechnologies.com.debug.log:23 15:06:39,569 [impl.ThriftScanner] DEBUG: Error getting transport to 127.0.0.1:9997 : org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: 120000 millis timeout while waiting for channel to be ready for read. ch : java.nio.channels.SocketChannel[connected local=/127.0.0.1:53730 remote=/127.0.0.1:9997]

      monitor_server1.bericotechnologies.com.debug.log.2:23 15:10:10,935 [impl.ThriftScanner] DEBUG: Error getting transport to 127.0.0.1:9997 : org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: 120000 millis timeout while waiting for channel to be ready for read. ch : java.nio.channels.SocketChannel[connected local=/127.0.0.1:53982 remote=/127.0.0.1:9997]

      tracer_server1.bericotechnologies.com.log:23 15:11:55,935 [trace.TraceServer] INFO : waiting to checking/create t
      he trace table: org.apache.accumulo.core.client.AccumuloSecurityException: Error BAD_CREDENTIALS - Username or Password is Invalid

      tserver_server1.bericotechnologies.com.debug.log.2:23 15:10:51,713 [tabletserver.NativeMap] ERROR: Failed to load native map library /opt/accumulo/lib/native/map/libNativeMap-Linux-amd64-64.so
      tserver_server1.bericotechnologies.com.debug.log.2:java.lang.UnsatisfiedLinkError: Can't load library: /opt/accumulo/lib/native/map/libNativeMap-Linux-amd64-64.so

      -------------------------------------------------------------------------------------------------------------------

      When running Accumulo 1.4 (trunk), I am able to create a table, but I would like to run Accumulo 1.3 release. I am working with some other software that has only been tested with Cloudbase 1.3.2 and 1.3.4.

      If there's anything specifically I should be looking for in the log, please direct.

        Activity

        Hide
        Minh Duc Nguyen added a comment -

        My workaround for https://issues.apache.org/jira/browse/ACCUMULO-183 also fixed this issue for me.

        I manually create walogs directory and walogs/.lock file, and then run bin/start-all.

        I can now create/delete tables, insert/delete rows, etc.

        Show
        Minh Duc Nguyen added a comment - My workaround for https://issues.apache.org/jira/browse/ACCUMULO-183 also fixed this issue for me. I manually create walogs directory and walogs/.lock file, and then run bin/start-all. I can now create/delete tables, insert/delete rows, etc.
        Hide
        Eric Newton added a comment -

        Right... that's the way it's supposed to work. You have to manually create the walog directory. You don't need to create the .lock file: the logger does that (which ensures it has write permissions to the directory, that the OS hasn't made the directory read-only due to partial disk failure, and prevents the files from being served by multiple servers).

        Show
        Eric Newton added a comment - Right... that's the way it's supposed to work. You have to manually create the walog directory. You don't need to create the .lock file: the logger does that (which ensures it has write permissions to the directory, that the OS hasn't made the directory read-only due to partial disk failure, and prevents the files from being served by multiple servers).
        Hide
        Minh Duc Nguyen added a comment -

        I see in the v1.3 manual where it mentions that you have to create the walog directory. It may be helpful for other people to 1) make this step more explicit in the manual, 2) check that the directory doesn't exist and output an appropriate error message in the log, or 3) if the directory doesn't exist, just go ahead and create it.

        In whichever case, thanks for the help. It is appreciated.

        Show
        Minh Duc Nguyen added a comment - I see in the v1.3 manual where it mentions that you have to create the walog directory. It may be helpful for other people to 1) make this step more explicit in the manual, 2) check that the directory doesn't exist and output an appropriate error message in the log, or 3) if the directory doesn't exist, just go ahead and create it. In whichever case, thanks for the help. It is appreciated.

          People

          • Assignee:
            Billie Rinaldi
            Reporter:
            Minh Duc Nguyen
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development