[ 
https://issues.apache.org/jira/browse/FLINK-14296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16947516#comment-16947516
 ] 

Jark Wu commented on FLINK-14296:
---------------------------------

Thanks [~dwysakowicz], I think we should check not null for primaryKeyList and 
uniqueKeyList and maybe other fields. And add tests (DDLs with empty columns, 
no primary keys, etc..) to verify they are not null. And then we can check 
isEmpty on the lists in {{SqlCreateTable#validate}}.

> SqlNodes in the parser module should use an Optional for optional parameters
> ----------------------------------------------------------------------------
>
>                 Key: FLINK-14296
>                 URL: https://issues.apache.org/jira/browse/FLINK-14296
>             Project: Flink
>          Issue Type: Improvement
>          Components: Table SQL / API
>            Reporter: Dawid Wysakowicz
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> I want to suggest using Optional for optional parameters in classes such as 
> SqlCreateTable/SqlCreateView/SqlTableColumn etc.
> Right now we must check against null at different locations e.g.:
> {code}
> SqlNodeList partitionKey = sqlCreateTable.getPartitionKeyList();
> if (partitionKey != null) {
>       partitionKeys = partitionKey
>               .getList()
>               .stream()
>               .map(p -> ((SqlIdentifier) p).getSimple())
>               .collect(Collectors.toList());
> }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to