timsants commented on code in PR #8509:
URL: https://github.com/apache/pinot/pull/8509#discussion_r848989982


##########
pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/PinotHelixResourceManager.java:
##########
@@ -1385,7 +1385,9 @@ public void addTable(TableConfig tableConfig)
       throws IOException {
     String tableNameWithType = tableConfig.getTableName();
     if (getTableConfig(tableNameWithType) != null) {
-      throw new TableAlreadyExistsException("Table " + tableNameWithType + " 
already exists");
+      throw new TableAlreadyExistsException("Table config for " + 
tableNameWithType
+          + " already exists. If this is unexpected, try deleting the table to 
remove all metadata associated"
+          + " with it.");

Review Comment:
   We don't know the intention of the user for this operation. The user might 
not know that another table has already been created with this name and we 
wouldn't want to blindly overwrite an existing table config in that case.
   
   Regarding your questions above:
   
   When the consumer error error happens, the tableConfig is created but it is 
not easily understood that it stopped partially after the table config was 
uploaded. I don't think this is a UI specific issue. The issue is that the user 
does not have awareness of what states were persisted until it go to the 
consumer failure. We should undo any partial operation that occurred during the 
table creation process because the user has no 
   
   From what I see, only some basic validation happens up front before 
uploading the tableconfig to ZK. I think uploading the table config to ZK up 
front + checking it, acts as a good operation to prevent race conditions with 
other table creation/deletion operations.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to