Riza Suminto has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/19383 )

Change subject: IMPALA-11809: Support non unique primary key for Kudu
......................................................................


Patch Set 17:

(4 comments)

http://gerrit.cloudera.org:8080/#/c/19383/16/fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java
File fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java:

http://gerrit.cloudera.org:8080/#/c/19383/16/fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java@488
PS16, Line 488: 
sb.append(KuduUtil.getPrimaryKeyString(isPrimaryKeyUnique)).append(" (");
              :         Joiner.on(", ").appendTo(sb
> Done
Done


http://gerrit.cloudera.org:8080/#/c/19383/16/fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java@501
PS16, Line 501: Joiner.on(", ").appendTo(sb, primaryKeysSql).append(")");
              :       }
> Done
Done


http://gerrit.cloudera.org:8080/#/c/19383/17/fe/src/main/java/org/apache/impala/catalog/KuduColumn.java
File fe/src/main/java/org/apache/impala/catalog/KuduColumn.java:

http://gerrit.cloudera.org:8080/#/c/19383/17/fe/src/main/java/org/apache/impala/catalog/KuduColumn.java@71
PS17, Line 71: Preconditions.checkArgument((!isKey && !isPrimaryKeyUnique && 
!isAutoIncrementing)
             :         || (isKey && (isPrimaryKeyUnique && !isAutoIncrementing 
|| !isPrimaryKeyUnique)));
May I suggest to split this with branch on isKey?

if (isKey) {
  Preconditions.checkArgument(isPrimaryKeyUnique && !isAutoIncrementing || 
!isPrimaryKeyUnique);
} else {
  Preconditions.checkArgument(!isPrimaryKeyUnique && !isAutoIncrementing);
}

This way, we can quickly distinguish between the two case on failure.


http://gerrit.cloudera.org:8080/#/c/19383/16/fe/src/main/java/org/apache/impala/catalog/KuduTable.java
File fe/src/main/java/org/apache/impala/catalog/KuduTable.java:

http://gerrit.cloudera.org:8080/#/c/19383/16/fe/src/main/java/org/apache/impala/catalog/KuduTable.java@391
PS16, Line 391: isPrimaryKeyUnique_ = kuduSchema_.isPrimaryKeyUnique();
              :     hasAutoIncrementingColumn_ = 
kuduSchema_.hasAutoIncrementingColumn();
> No. auto-incrementing column must be non unique primary key, but non unique
So is it valid to add this precondition here?

Preconditions.checkState(!isPrimaryKeyUnique_ || !hasAutoIncrementingColumn_);



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

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4d7882bf3d01a3492cc9827c072d1f3200d9eebd
Gerrit-Change-Number: 19383
Gerrit-PatchSet: 17
Gerrit-Owner: Wenzhe Zhou <wz...@cloudera.com>
Gerrit-Reviewer: Abhishek Chennaka <achenn...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <ale...@apache.org>
Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com>
Gerrit-Reviewer: Kurt Deschler <kdesc...@cloudera.com>
Gerrit-Reviewer: Marton Greber <greber...@gmail.com>
Gerrit-Reviewer: Qifan Chen <qfc...@hotmail.com>
Gerrit-Reviewer: Riza Suminto <riza.sumi...@cloudera.com>
Gerrit-Reviewer: Wenzhe Zhou <wz...@cloudera.com>
Gerrit-Comment-Date: Fri, 03 Feb 2023 16:52:10 +0000
Gerrit-HasComments: Yes

Reply via email to