You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@impala.apache.org by "Csaba Ringhofer (Jira)" <ji...@apache.org> on 2023/09/24 04:18:00 UTC

[jira] [Created] (IMPALA-12461) Avoid write lock on the table during self-event detection

Csaba Ringhofer created IMPALA-12461:
----------------------------------------

             Summary: Avoid write lock on the table during self-event detection
                 Key: IMPALA-12461
                 URL: https://issues.apache.org/jira/browse/IMPALA-12461
             Project: IMPALA
          Issue Type: Improvement
          Components: Catalog
            Reporter: Csaba Ringhofer


Saw some callstacks like this:
{code}
    at org.apache.impala.catalog.CatalogServiceCatalog.tryLock(CatalogServiceCatalog.java:468)
    at org.apache.impala.catalog.CatalogServiceCatalog.tryWriteLock(CatalogServiceCatalog.java:436)
    at org.apache.impala.catalog.CatalogServiceCatalog.evaluateSelfEvent(CatalogServiceCatalog.java:1008)
    at org.apache.impala.catalog.events.MetastoreEvents$MetastoreEvent.isSelfEvent(MetastoreEvents.java:609)
    at org.apache.impala.catalog.events.MetastoreEvents$BatchPartitionEvent.process(MetastoreEvents.java:1942)
{code}

At this point it was already checked that the event comes from Impala based on service id and now we are checking the table's self event list. Taking the table lock can be problematic as other DDL may took write lock at the same time.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)