Ran Tao created FLINK-30259:
-------------------------------

             Summary: Using flink Preconditions Util instead of uncertain 
Assert keyword to do checking
                 Key: FLINK-30259
                 URL: https://issues.apache.org/jira/browse/FLINK-30259
             Project: Flink
          Issue Type: Improvement
          Components: Formats (JSON, Avro, Parquet, ORC, SequenceFile), Table 
SQL / API
    Affects Versions: 1.16.0
            Reporter: Ran Tao


The code of some modules of the current Flink project uses the 'assert' keyword 
of java to do checking, which actually depends on the enablement of the 
-enableassertions (-ea) option (default is false), otherwise it may lead to 
unexpected behavior. In fact, flink already has a mature Preconditions tool, we 
can use it to replace 'assert' keyword. it is more clean and consistent with 
flink.

The following is an example of some patch. (by using idea, we can fix it 
easily.)

RowDataPrintFunction
{code:java}
@Override
        public void invoke(RowData value, Context context) {
            Object data = converter.toExternal(value);
            assert data != null;
            writer.write(data.toString());
        }
{code}

KubernetesUtils
{code:java}
    public static KubernetesConfigMap checkConfigMaps(
            List<KubernetesConfigMap> configMaps, String expectedConfigMapName) 
{
        assert (configMaps.size() == 1);
        assert (configMaps.get(0).getName().equals(expectedConfigMapName));
        return configMaps.get(0);
    }
{code}







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

Reply via email to