On 03.08.2018 17:44, Aaron Conole wrote:
> Ilya Maximets <[email protected]> writes:
> 
>> Each run of the testsuite produces millions lines in a system
>> log. This is completely unnecessary and makes it difficult to
>> use system logs on test / build servers.
>>
>> This series is aimed to disable most of the syslog messages.
>> There are still few logs that requires significant changes in
>> tests or code to disable. They will be removed separately if
>> needed.
>>
>> Some testing results:
>>   OS : RHEL 7.5
>>   CPU: Xeon E5 v4 2.6GHz
>>   Cmd: make check TESTSUITEFLAGS='-j20'
>>
>>   Without patches:
>>       * 3.350.097 Lines of logs in journalctl
>>       * Execution time: 11 minutes
>>       * jourlald eats 100% of one cpu core.
>>
>>   With patch-set applied:
>>       * 226 Lines of logs in journalctl
>>       * Execution time: 2.5 minutes
>>
>> So, in addition to clean logs, this patch-set significantly
>> speeds up the testsuite execution in parralel builds (more
>> than 4 times! in my case).
>>
>> Side effects:
>>   * default timeout applied to control utils in a subshell.
>>   * tests refactored to be more readable.
>>   * testsuite execution speed up.
>>
>> Version 2:
>>   * Fixed accidentially missed '--timeout' in patches 1 and 2. [Aaron]
>>
>> Ilya Maximets (9):
>>   tests: Simplify the setting of aliases.
>>   tests: Set default timeout for utils in subshell.
>>   tests: Disable syslog by default for control utils.
>>   tests: Disable syslog for daemons.
>>   tests: Enable only file logging by vlog/set appctl.
>>   tests: Drop full logging for ovs-ofctl.
>>   tests: Disable syslog for test utils.
>>   tests: Reorder logging args for ovn-sbctl in a subshell.
>>   tests: Disable syslog for ovsdb-tool.
>>
>>  tests/bridge.at               |   3 +-
>>  tests/dpif-netdev.at          |  10 +-
>>  tests/learn.at                |   6 +-
>>  tests/mpls-xlate.at           |   4 +-
>>  tests/ofproto-dpif.at         | 138 +++++++++++++------------
>>  tests/ofproto-macros.at       |  22 +++-
>>  tests/ofproto.at              |  20 ++--
>>  tests/ovn-controller-vtep.at  |  35 +++++--
>>  tests/ovn-nbctl.at            |   4 +-
>>  tests/ovn-sbctl.at            |  19 +++-
>>  tests/ovs-macros.at           |  39 ++------
>>  tests/ovs-ofctl.at            |   4 +-
>>  tests/ovs-vsctl.at            |  21 +++-
>>  tests/ovs-vswitchd.at         |  17 +++-
>>  tests/ovsdb-cluster.at        |   8 +-
>>  tests/ovsdb-idl.at            |  37 +++++--
>>  tests/ovsdb-lock.at           |   6 +-
>>  tests/ovsdb-monitor.at        |  23 ++++-
>>  tests/ovsdb-rbac.at           |   3 +-
>>  tests/ovsdb-server.at         | 227 
>> ++++++++++++++++++++++++++++++++----------
>>  tests/ovsdb.at                |   2 +-
>>  tests/pmd.at                  |  20 ++--
>>  tests/stp.at                  |   6 +-
>>  tests/system-traffic.at       |   4 +-
>>  tests/tunnel-push-pop-ipv6.at |   2 +-
>>  tests/tunnel-push-pop.at      |   2 +-
>>  tests/vlog.at                 |  15 +--
>>  tests/vtep-ctl.at             |   4 +-
>>  28 files changed, 463 insertions(+), 238 deletions(-)
> 
> For the series:
> 
> Acked-by: Aaron Conole <[email protected]>

Thanks.

> 
> As a note, I saw a mix of '--detach' and '&' being used to background
> various invocations of ovs-vswitchd and ovsdb-server.  Is there a
> reason to prefer one vs the other?

Tests are not much consistent in general, unfortunately. For this
case, IMHO, it's better to use '--detach' + '--log-file'. This could
leave some possibly useful artifacts in case of test failure. As I
understand, many tests just does not care about the services they're
starting. They're not even trying to check execution statuses or
logs. This is a bad style, I think.

Maybe it'll be good to make some coding style document or best
practices guideline for test writers someday.

There are also a lot of code duplications between tests. That's
another big issue.
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to