4 Commits

Author SHA1 Message Date
Steven Luong
c79b32deb0 tests: fix checkstyle failure in test_stats_client.py
New job submitted to Jenkins reported checkstyle failure in
test_stats_client.py. It needs a blank line in one place and line is
too long in another place.

Type: fix

Change-Id: I9b18df1df449a287570d614d6c5b514ceb88480c
Signed-off-by: Steven Luong <sluong@cisco.com>
2019-06-18 16:14:43 -07:00
Ole Troan
92e3082199 stats: fix memory leakage when adding / deleting interfaces
This fixes two leaks in registering errors in the stats segment.
- The error name created by vlib_register_errors() was not freed.
- Duplicate error names (when interface readded) was added to the vector.

This fix also adds memory usage statistics for the statistics segment
as /mem/statseg/{used, total}

Change-Id: Ife98d5fc5baef5bdae426a5a1eef428af2b9ab8a
Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
2019-06-18 13:01:15 +00:00
Ole Troan
233e468183 stats: support multiple works for error counters
The current code only allowed access to the main thread error counters.
That is not so useful for a multi worker instance.
No return a vector indexed by thread of counter_t values.

Type: fix

Change-Id: Ie322c8889c0c8175e1116e71de04a2cf453b9ed7
Signed-off-by: Ole Troan <ot@cisco.com>
2019-05-22 09:43:49 +00:00
Paul Vinciguerra
5995482d31 VPP-1486: Unittest for stat segment file descriptor leak.
Verifies: https://gerrit.fd.io/r/#/c/18167/

Before patch:

    ==============================================================================
    Test Stats Client
    ==============================================================================
    Test file descriptor count - VPP-1486                                    FAIL [ temp dir used by test case: /tmp/vpp-unittest-StatsClientTestCase-EAp0e7 ]

    ==============================================================================
    FAIL: Test file descriptor count - VPP-1486
    ------------------------------------------------------------------------------
    Traceback (most recent call last):
      File "/vpp/test/test_stats_client.py", line 39, in test_client_fd_leak
        initial_fds, ending_fds))
    AssertionError: initial client side file descriptor count: 20 is not equal to ending client side file descriptor count: 120

    04:55:38,038 Symlink to failed testcase directory: /tmp/vpp-failed-unittests/vpp-unittest-StatsClientTestCase-EAp0e7-FAILED -> vpp-unittest-StatsClientTestCase-EAp0e7

    ==============================================================================
    TEST RESULTS:
         Scheduled tests: 1
          Executed tests: 1
            Passed tests: 0
                Failures: 1
    FAILURES AND ERRORS IN TESTS:
      Testcase name: Test Stats Client
        FAILURE: Test file descriptor count - VPP-1486 [test_stats_client.StatsClientTestCase.test_client_fd_leak]
    =============================================================================

After patch:

    ==============================================================================
    Test Stats Client
    ==============================================================================
    Test file descriptor count - VPP-1486                                    OK

    ==============================================================================
    TEST RESULTS:
         Scheduled tests: 1
          Executed tests: 1
            Passed tests: 1
    ==============================================================================

    Test run was successful

Change-Id: I055e473ecf0566ebfbfbadd58ec6eaf11fc77d68
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-03-12 05:26:04 +00:00