You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Jiazhen Xu (Jira)" <ji...@apache.org> on 2022/03/21 03:56:00 UTC

[jira] [Updated] (NIFI-9818) Flaky tests due to HashMap/HashSet in nifi-record

     [ https://issues.apache.org/jira/browse/NIFI-9818?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jiazhen Xu updated NIFI-9818:
-----------------------------
    Description: 
*{*}Description{*}*
Four tests in `nifi-record` (`org.apache.nifi.serialization.record.TestMapRecord#testDefaultValueWithAliasValue` and`org.apache.nifi.serialization.record.TestMapRecord#testAliasConflictingAliasValues`, `org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapStringKeys`, and `org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapNonStringKeys`) can fail due to the non-deterministic order of iteration of _HashMap_ and {_}HashSet{_}.

One can manifest this problem using [[NonDex]([https://github.com/TestingResearchIllinois/NonDex)](https://github.com/TestingResearchIllinois/NonDex):]

```
mvn install -pl nifi-commons/nifi-record -am
mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestMapRecord#testAliasConflictingAliasValues
mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestMapRecord#testDefaultValueWithAliasValue
mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapStringKeys
mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapNonStringKe
```

*{*}Fix Changes{*}*
Use LinkedHashMap/LinkedHashSet instead of HashMap/HashSet in the test.

 

  was:
**Description**
Four tests in `nifi-record` (`org.apache.nifi.serialization.record.TestMapRecord#testDefaultValueWithAliasValue` and`org.apache.nifi.serialization.record.TestMapRecord#testAliasConflictingAliasValues`, `org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapStringKeys`, and `org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapNonStringKeys`) can fail due to the non-deterministic order of iteration of _HashMap_ and _HashSet_.

One can manifest this problem using [[NonDex](https://github.com/TestingResearchIllinois/NonDex)](https://github.com/TestingResearchIllinois/NonDex):

```
mvn install -pl nifi-commons/nifi-record -am
mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestMapRecord#testAliasConflictingAliasValues
mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestMapRecord#testDefaultValueWithAliasValue
mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapStringKeys
mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapNonStringKe
```

**Fix Changes**
Use LinkedHashMap/LinkedHashSet instead of HashMap/HashSet in the test.

 


> Flaky tests due to HashMap/HashSet in nifi-record 
> --------------------------------------------------
>
>                 Key: NIFI-9818
>                 URL: https://issues.apache.org/jira/browse/NIFI-9818
>             Project: Apache NiFi
>          Issue Type: Bug
>            Reporter: Jiazhen Xu
>            Priority: Major
>
> *{*}Description{*}*
> Four tests in `nifi-record` (`org.apache.nifi.serialization.record.TestMapRecord#testDefaultValueWithAliasValue` and`org.apache.nifi.serialization.record.TestMapRecord#testAliasConflictingAliasValues`, `org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapStringKeys`, and `org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapNonStringKeys`) can fail due to the non-deterministic order of iteration of _HashMap_ and {_}HashSet{_}.
> One can manifest this problem using [[NonDex]([https://github.com/TestingResearchIllinois/NonDex)](https://github.com/TestingResearchIllinois/NonDex):]
> ```
> mvn install -pl nifi-commons/nifi-record -am
> mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestMapRecord#testAliasConflictingAliasValues
> mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestMapRecord#testDefaultValueWithAliasValue
> mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapStringKeys
> mvn -pl nifi-commons/nifi-record edu.illinois:nondex-maven-plugin:1.1.2:nondex -Dtest=org.apache.nifi.serialization.record.TestDataTypeUtils#testInferTypeWithMapNonStringKe
> ```
> *{*}Fix Changes{*}*
> Use LinkedHashMap/LinkedHashSet instead of HashMap/HashSet in the test.
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)