You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Ismaël Mejía (JIRA)" <ji...@apache.org> on 2019/03/15 22:15:00 UTC

[jira] [Updated] (BEAM-5193) KuduIO testWrite not correctly verifying behaviour

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

Ismaël Mejía updated BEAM-5193:
-------------------------------
    Component/s: io-java-kudu

> KuduIO testWrite not correctly verifying behaviour
> --------------------------------------------------
>
>                 Key: BEAM-5193
>                 URL: https://issues.apache.org/jira/browse/BEAM-5193
>             Project: Beam
>          Issue Type: Bug
>          Components: io-ideas, io-java-kudu
>    Affects Versions: 2.6.0
>            Reporter: Tim Robertson
>            Assignee: Tim Robertson
>            Priority: Major
>             Fix For: 2.7.0
>
>          Time Spent: 1h
>  Remaining Estimate: 0h
>
> The {{testWrite}} in {{KuduIOTest}} has 2 typos which were committed in error.
> The following code block
> {code:java}
>     for (int i = 1; i <= targetParallelism + 1; i++) {
>       expectedWriteLogs.verifyDebug(String.format(FakeWriter.LOG_OPEN_SESSION, i));
>       expectedWriteLogs.verifyDebug(
>           String.format(FakeWriter.LOG_WRITE, i)); // at least one per writer
>       expectedWriteLogs.verifyDebug(String.format(FakeWriter.LOG_CLOSE_SESSION, i));
>     }
>     // verify all entries written
>     for (int n = 0; n > numberRecords; n++) {
>       expectedWriteLogs.verifyDebug(
>           String.format(FakeWriter.LOG_WRITE_VALUE, n)); // at least one per writer
>     }
> {code}
>  
> Should have read:
> {code:java}
>     for (int i = 1; i <= targetParallelism ; i++) {
>       expectedWriteLogs.verifyDebug(String.format(FakeWriter.LOG_OPEN_SESSION, i));
>       expectedWriteLogs.verifyDebug(
>           String.format(FakeWriter.LOG_WRITE, i)); // at least one per writer
>       expectedWriteLogs.verifyDebug(String.format(FakeWriter.LOG_CLOSE_SESSION, i));
>     }
>     // verify all entries written
>     for (int n = 0; n < numberRecords; n++) {
>       expectedWriteLogs.verifyDebug(
>           String.format(FakeWriter.LOG_WRITE_VALUE, n)); // at least one per writer
>     }
> {code}
> This has gone unnoticed because 1) the {{targetParallelism}} is a function of cores available, and the test uses 3 only (which is the min in {{DirectRunner}}) and 2) the incorrect {{>}} in the test simply meant the loop was not run.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)