Vihang Karajgaonkar has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/12118 )

Change subject: IMPALA-7970 : Add support for metastore event based automatic 
invalidate
......................................................................


Patch Set 25:

(10 comments)

http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/main/java/org/apache/impala/catalog/CatalogServiceCatalog.java
File fe/src/main/java/org/apache/impala/catalog/CatalogServiceCatalog.java:

http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/main/java/org/apache/impala/catalog/CatalogServiceCatalog.java@308
PS25, Line 308:       LOG.info(String.format("Metastore event processing is 
disabled. Event polling "
> nit: fix formatting.
Done


http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/main/java/org/apache/impala/catalog/events/MetastoreEventUtils.java
File fe/src/main/java/org/apache/impala/catalog/events/MetastoreEventUtils.java:

http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/main/java/org/apache/impala/catalog/events/MetastoreEventUtils.java@145
PS25, Line 145: no
> not
Done


http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/main/java/org/apache/impala/catalog/events/MetastoreEventUtils.java@166
PS25, Line 166: drop event later
> Do we also need to remove the drop event or are we just letting it fail sil
drop events are implemented as dropIfExists. So since the create event is 
skipped, the drop event processing becomes a no-op. I wanted to remove the drop 
event as well, but it was complicating this code here without any added 
benefit. I will add a comment here saying why its ok to not remove the drop 
event so that its clear in the future.


http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/main/java/org/apache/impala/catalog/events/MetastoreEventUtils.java@174
PS25, Line 174:         fromIndex++;
> Log how many events got filtered out? Helps diagnosing incase there are any
Good point. Also, added logging in the isRemovedAfter impl for createTable and 
createDatabase events.


http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/main/java/org/apache/impala/catalog/events/MetastoreEventUtils.java@356
PS25, Line 356: if (this.dbName_.equalsIgnoreCase(dropTableEvent.dbName_) && 
this.tblName_
              :               .equalsIgnoreCase(dropTableEvent.tblName_)) {
              :             return true;
              :           }
> nit: simplify to return dbName_.equals() && tblName_.equals();
Actually, added a log statement in the if block so can't do this anymore.


http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/main/java/org/apache/impala/catalog/events/MetastoreEventUtils.java@360
PS25, Line 360: else if 
(event.eventType_.equals(MetastoreEventType.ALTER_TABLE)) {
              :           // if this create table was renamed to some other 
name in the future return true
              :           AlterTableEvent alterTableEvent = (AlterTableEvent) 
event;
              :           if (alterTableEvent.isRename_ && this.dbName_
              :               
.equalsIgnoreCase(alterTableEvent.tableBefore_.getDbName()) && this.tblName_
              :               
.equalsIgnoreCase(alterTableEvent.tableBefore_.getTableName())) {
              :             return true;
              :           }
> clarify why rename qualifies as an inverse op for create?
Done


http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/main/java/org/apache/impala/catalog/events/MetastoreEventsProcessor.java
File 
fe/src/main/java/org/apache/impala/catalog/events/MetastoreEventsProcessor.java:

http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/main/java/org/apache/impala/catalog/events/MetastoreEventsProcessor.java@295
PS25, Line 295: LOG.info(String
              :           .format("Received %d events. Start event id : %d", 
response.getEvents().size(),
              :               lastSyncedEventId_));
> nit: format to fewer lines.
this statement cannot be converted to a 2 line statement without increasing the 
line width beyond 100


http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/main/java/org/apache/impala/catalog/events/MetastoreEventsProcessor.java@319
PS25, Line 319:   LOG.warn(String.format(
              :             "Not processing notification events since event 
processing status "
              :                 + "is %s. Last synced event id is %d", 
currentStatus,
              :             lastSyncedEventId_));
> nit: format to fewer lines.
Reduced the text verbosity to make it to 2 lines.


http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/test/java/org/apache/impala/catalog/events/MetastoreEventsProcessorTest.java
File 
fe/src/test/java/org/apache/impala/catalog/events/MetastoreEventsProcessorTest.java:

http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/test/java/org/apache/impala/catalog/events/MetastoreEventsProcessorTest.java@339
PS25, Line 339:
              :     // remove some partitions
              :     // change some partitions
> ?
had kept a reminder for myself to add partition and alter partition test. Added 
them. Thanks for pointing this out.


http://gerrit.cloudera.org:8080/#/c/12118/25/fe/src/test/java/org/apache/impala/catalog/events/MetastoreEventsProcessorTest.java@583
PS25, Line 583:  in
> ?
updated the doc.



--
To view, visit http://gerrit.cloudera.org:8080/12118
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Ic70b27780560b7ac9b33418d132b36cd0ca4abf7
Gerrit-Change-Number: 12118
Gerrit-PatchSet: 25
Gerrit-Owner: Vihang Karajgaonkar <vih...@cloudera.com>
Gerrit-Reviewer: Bharath Vissapragada <bhara...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com>
Gerrit-Reviewer: Paul Rogers <prog...@cloudera.com>
Gerrit-Reviewer: Tim Armstrong <tarmstr...@cloudera.com>
Gerrit-Reviewer: Vihang Karajgaonkar <vih...@cloudera.com>
Gerrit-Comment-Date: Tue, 29 Jan 2019 01:18:33 +0000
Gerrit-HasComments: Yes

Reply via email to