Mir

Intermittent (frequent) acceptance test failure on ServerShutdown/OnSignal.removes_endpoint_on_signal

Bug #1237710 reported by Robert Carr on 2013-10-09
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mir
Fix Released
High
Mir development team
mir (Ubuntu)
High
Mir development team

Bug Description

[----------] 5 tests from ServerShutdown/OnSignal
[ RUN ] ServerShutdown/OnSignal.removes_endpoint_on_signal/0

unknown file: Failure
C++ exception with description "Timeout while waiting for child to change state" thrown in the test body.

Seems to fail mostly over and over locally for me.

When this happens, a stale instance of acceptance-tests keeps running in the background at 100% CPU.

Related branches

Daniel van Vugt (vanvugt) wrote :

Confirmed on Nexus7.

Changed in mir:
status: New → Confirmed
tags: added: testsfail
summary: Intermittent (frequent) acceptance test failure on
- OnSignal.removes_endpoint_on_signal
+ ServerShutdown/OnSignal.removes_endpoint_on_signal
Changed in mir:
importance: Undecided → High
Daniel van Vugt (vanvugt) wrote :

Confirmed on Nexus 7 and Nexus 4.

tags: added: nexus7
tags: added: nexus4
Daniel van Vugt (vanvugt) wrote :

Also confirmed on desktop (amd64)

Changed in mir:
status: Confirmed → Triaged
Changed in mir:
assignee: nobody → Daniel van Vugt (vanvugt)
status: Triaged → In Progress
Daniel van Vugt (vanvugt) wrote :

Weirdly this happens every time I run bin/acceptance-tests, but never if I run:
  make test
or
  bin/acceptance-tests --gtest_filter="ServerShutdown*"

description: updated
Alan Griffiths (alan-griffiths) wrote :

I was looking at this (on desktop) a couple of days ago - before getting sidetracked by something more urgent.

It is an interaction with another test (or tests) and I could reproduce by running

    bin/acceptance-tests --gtest_filter=ServerShutdown*:TestClientInput*

I suspected that the "stale" acceptance test instance was the cause, not result of the failure reported.

Changed in mir:
milestone: none → phone-v1-freeze
Changed in mir:
assignee: Daniel van Vugt (vanvugt) → Mir development team (mir-team)
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:~mir-team/mir/development-branch at revision None, scheduled for release in mir, milestone Unknown

Changed in mir:
status: In Progress → Fix Committed
Changed in mir:
milestone: phone-v1-freeze → 0.0.16
Changed in mir:
status: Fix Committed → Fix Released
Changed in mir:
milestone: 0.0.16 → 0.1.0
status: Fix Released → Fix Committed
Changed in mir (Ubuntu):
assignee: nobody → Mir development team (mir-team)
importance: Undecided → High
status: New → Fix Committed
Changed in mir:
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :
Download full text (5.1 KiB)

This bug was fixed in the package mir - 0.1.0+14.04.20131028-0ubuntu1

---------------
mir (0.1.0+14.04.20131028-0ubuntu1) trusty; urgency=low

  [ Daniel van Vugt ]
  * Bump version 0.1.0
  * Add method for testing if Rectangle::contains(Rectangle), which is
    the basis of any occlusion detection. (LP: #1227739)
  * Add support for traversing the Scene from front surface to back.
    This is required for occlusion detection at least (coming soon). .
    (LP: #1227739)
  * Optimization: Turn off blending for surfaces that are not blendable.
    On some systems this can have a noticeable performance benefit.
  * Avoid rendering surfaces that are fully hidden by other surfaces.
    This is particularly important for mobile device performance. (LP:
    #1227739) . (LP: #1227739)
  * Remove orphaned tags, which appear to have come from the Compiz
    project (!?) Add tags for the most recent releases up to 0.0.16. No
    files changed, only tags.
  * Fix significant performance issues LP: #1241369 / LP: #1241371, and
    probably more(!) Added regression test to catch such regressions and
    revert the offending commit r1049. (LP: #1241369, #1241371)

  [ Brandon Schaefer ]
  * When Scroll events come in we don't keep around the android vscroll
    hscroll data. Store it now. (LP: #1233089)

  [ Albert Astals ]
  * Fix mismatched free() / delete / delete [] reported by valgrind

  [ Alexandros Frantzis ]
  * server: Extend server status (formerly pause/resume) listener to
    report "started" events This change is needed by users of
    libmirserver, so they can properly synchronize external interactions
    with the server. (LP: #1239876)
  * graphics,examples: Don't enable more outputs than supported when
    changing the display configuration. (LP: #1217877)
  * client: Allow clients to call API functions after a connection break
    has been detected When a client tries to call an API function after
    a connection break has been detected in a previous API call, the
    client blocks in the new call. This happens because in
    MirSocketRpcChannel::notify_disconnected() the pending RPC calls are
    not forced to complete, since the channel has already been marked as
    'disconnected' by the failure in the previous call. Note that if the
    break is first detected while calling an API function, then that
    call doesn't block, since this is the first time we call
    MirSocketRpcChannel::notify_disconnected() and the pending RPC calls
    are forced to complete. This commit solves this problem by always
    forcing requests to complete when a communication failure occurs,
    even if a disconnection has already been handled. This is preferred
    over the alternative of manually calling the completion callback in
    a try-catch block when calling an RPC method because of: 1.
    Correctness: In case the communication problem first occurs in that
    call, the callback will be called twice, once by
    notify_disconnected() and once manually. 2. Consistency: The
    callback is called from one place regardless of whether the
    communication problem is first detected during that call or not.
    (LP: #1201436)
  * graphics: Improve si...

Read more...

Changed in mir (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers