Skip to content

All workload start scripts get benchmark command's return code wrong #453

@rayx

Description

@rayx

All workload start scripts use the following pattern to get benchmark command's return code:

        syslog_netcat "Command output will be shown"
        $command_line 2>&1 | while read line ; do
            syslog_netcat "$line"
            echo $line >> $GEN_OUTPUT_FILE
        done
        ERROR=$?

$? is the return code of the last command in the pipe, not that of the benchmark command.

Fix: a few solutions are list in the discussion on how to get the first command's return code. The simplest one is using ${PIPESTATUS[0]} (it's a bash specific variable)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions