Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-5028

Exception in catalog web UI when trying to display loaded table

    Details

      Description

      When trying to display a loaded table in the catalog web UI, I get an IllegalStateException.
      To repro:

      impala-shell> refresh default.<tbl>;
      Point your browser to: localhost:25020/catalog_object?object_type=TABLE&object_name=default.<tbl>
      

      The error is:

      IllegalStateException: Table.toThrift() called without holding the table lock:..
      

      Here is the full stacktrace:

      I0303 11:39:12.302106 25263 jni-util.cc:169] java.lang.IllegalStateException: Table.toThrift() called without holding the table
       lock: default.lineitem org.apache.impala.catalog.HdfsTable
      	at org.apache.impala.catalog.Table.toThrift(Table.java:305)
      	at org.apache.impala.catalog.HdfsTable.toThrift(HdfsTable.java:1623)
      	at org.apache.impala.catalog.Catalog.getTCatalogObject(Catalog.java:454)
      	at org.apache.impala.service.JniCatalog.getCatalogObject(JniCatalog.java:202)
      

      Alex, I believe this may be related to the fix for IMPALA-4998. If not, you may assign it back to me.

        Activity

        Hide
        alex.behm Alexander Behm added a comment -

        Upgrading to a blocker because it's a regression. Also we don't have test coverage for this.

        Show
        alex.behm Alexander Behm added a comment - Upgrading to a blocker because it's a regression. Also we don't have test coverage for this.
        Hide
        alex.behm Alexander Behm added a comment -

        commit 3b7ceceed29f2f34539a0def4ddb71b34e74d2b7
        Author: Alex Behm <alex.behm@cloudera.com>
        Date: Tue Mar 7 10:34:37 2017 -0800

        IMPALA-5028: Lock table in /catalog_objects endpoint.

        There was a missing lock acquisition before
        Table.toThrift() in the code used for implementing
        the /catalog_objects endpoint in the WebUI.

        Testing:

        • Added a regression test in test_web_pages.py

        Change-Id: I3ad4ce286b8cc169f29b8ddfa215f8949b1c11ff
        Reviewed-on: http://gerrit.cloudera.org:8080/6296
        Reviewed-by: Alex Behm <alex.behm@cloudera.com>
        Tested-by: Impala Public Jenkins

        Show
        alex.behm Alexander Behm added a comment - commit 3b7ceceed29f2f34539a0def4ddb71b34e74d2b7 Author: Alex Behm <alex.behm@cloudera.com> Date: Tue Mar 7 10:34:37 2017 -0800 IMPALA-5028 : Lock table in /catalog_objects endpoint. There was a missing lock acquisition before Table.toThrift() in the code used for implementing the /catalog_objects endpoint in the WebUI. Testing: Added a regression test in test_web_pages.py Change-Id: I3ad4ce286b8cc169f29b8ddfa215f8949b1c11ff Reviewed-on: http://gerrit.cloudera.org:8080/6296 Reviewed-by: Alex Behm <alex.behm@cloudera.com> Tested-by: Impala Public Jenkins

          People

          • Assignee:
            alex.behm Alexander Behm
            Reporter:
            dtsirogiannis Dimitris Tsirogiannis
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development