New issue
Advanced search Search tips

Issue 810448 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 816620
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Fuchsia
Pri: 3
Type: Bug



Sign in to add a comment

MultiprocessMessagePipeTestWithPeerSupport.MessagePipePassing/1 flaked under Fuchsia/x64 FYI

Project Member Reported by w...@chromium.org, Feb 8 2018

Issue description

MultiprocessMessagePipeTestWithPeerSupport.MessagePipePassing/1 failed in https://build.chromium.org/p/chromium.fyi/builders/Fuchsia/builds/13494 with:

[00039.793] 03943.04005> [ RUN      ] MultiprocessMessagePipeTestWithPeerSupport.MessagePipePassing/1
[00039.793] 03943.04005> [3:1355377137:0131/225507.301504:38197647:WARNING:test_suite.cc(237)] Test launcher output path /tmp/.org.chromium.Chromium.DKHNEj/test_results.xml exists. Not adding test launcher result printer.
[00039.794] 03943.04005> ../../mojo/edk/system/multiprocess_message_pipe_unittest.cc:573: Failure
[00039.794] 03943.04005> Expected equality of these values:
[00039.794] 03943.04005>   MOJO_RESULT_OK
[00039.795] 03943.04005>     Which is: 0
[00039.795] 03943.04005>   WaitForSignals(mp1, MOJO_HANDLE_SIGNAL_READABLE, &hss)
[00039.796] 03943.04005>     Which is: 9

Mojo result code 9 is MOJO_RESULT_FAILED_PRECONDITION - looking at the implementation of mojo::edk::test::Wait[ForSignals](), that must come from one of the |ready_result| reported by MojoArmWatcher.

Looking at https://cs.chromium.org/chromium/src/mojo/public/cpp/system/wait.cc?rcl=630bd243c57528c539304d001f0e28a39046f095&l=103 we:
- Don't seem to handle any failure except MOJO_RESULT_FAILED_PRECONDITION, though it looks like the Arm() implementation could legitimately return e.g. MOJO_RESULT_INVALID_ARGUMENT, for example.
- Don't initialize |ready_result| in Wait(), and various return-paths in e.g. MojoArmWatcher() seem not to set the value, so it's hard to reason about where this may come from.

rockot: Any ideas what might cause this result code?
 

Comment 1 by w...@chromium.org, Feb 9 2018

Failed again, this time on Fuchsia/x64/Debug FYI bot at https://build.chromium.org/p/chromium.fyi/builders/Fuchsia%20%28dbg%29/builds/16050:

[00069.102] 03921.03962> [ RUN      ] MultiprocessMessagePipeTestWithPeerSupport.MessagePipePassing/1
[00069.102] 03921.03962> [3:682738297:0209/135445.791786:68789782:WARNING:test_suite.cc(237)] Test launcher output path /tmp/.org.chromium.Chromium.KibDjJ/test_results.xml exists. Not adding test launcher result printer.
[00069.102] 03921.03962> ../../mojo/edk/system/multiprocess_message_pipe_unittest.cc:573: Failure
[00069.103] 03921.03962> Expected equality of these values:
[00069.103] 03921.03962>   MOJO_RESULT_OK
[00069.103] 03921.03962>     Which is: 0
[00069.104] 03921.03962>   WaitForSignals(mp1, MOJO_HANDLE_SIGNAL_READABLE, &hss)
[00069.105] 03921.03962>     Which is: 9

rockot: Any clues where to look for potential "failed preconditions"?

Comment 2 by roc...@chromium.org, Feb 12 2018

If you get failed precondition waiting for a pipe to be readable, it's because the other end of the pipe was closed without any messages being written.

In this case my default assumption would be that the test's child process has died unexpectedly.
https://build.chromium.org/p/chromium.fyi/builders/Fuchsia%20%28dbg%29/builds/16168

...
[00057.836] 03924.03965> [201/211] MultiprocessMessagePipeTestWithPeerSupport.MessagePipeTwoPassing/0 (433 ms)
[00059.467] 03924.04419> [3:430575379:0213/072421.810619:59467294:ERROR:test_launcher.cc(426)] going to zx_task_kill(job) for 188a0ea1
[00059.468] 03924.04419> [3:430575379:0213/072421.812175:59468808:ERROR:test_launcher.cc(443)] removing 188a0ea1 from live process list
[00059.485] 03924.03965> [ RUN      ] MultiprocessMessagePipeTestWithPeerSupport.MessagePipeTwoPassing/1
[00059.485] 03924.03965> [3:1775896523:0213/072354.101016:31759760:WARNING:test_suite.cc(237)] Test launcher output path /tmp/.org.chromium.Chromium.GnfLji/test_results.xml exists. Not adding test launcher result printer.
[00059.486] 03924.03965> ../../mojo/edk/system/multiprocess_message_pipe_unittest.cc:607: Failure
[00059.486] 03924.03965> Expected equality of these values:
[00059.486] 03924.03965>   MOJO_RESULT_OK
[00059.486] 03924.03965>     Which is: 0
[00059.487] 03924.03965>   WaitForSignals(mp1, MOJO_HANDLE_SIGNAL_READABLE, &hss)
[00059.487] 03924.03965>     Which is: 9
[00059.487] 03924.03965> [3:450874531:0213/072354.297786:31954421:ERROR:process_fuchsia.cc(168)] going to wait for process 1a17cba5 (deadline=41954223000, now=31954514000)
[00059.487] 03924.03965> [  FAILED  ] MultiprocessMessagePipeTestWithPeerSupport.MessagePipeTwoPassing/1, where GetParam() = 4-byte object <01-00 00-00> (4375 ms)
[00059.488] 03924.03965> [202/211] MultiprocessMessagePipeTestWithPeerSupport.MessagePipeTwoPassing/1 (4375 ms)
...

Comment 4 by w...@chromium.org, Feb 13 2018

Cc: -w...@chromium.org
Owner: w...@chromium.org
Project Member

Comment 5 by bugdroid1@chromium.org, Feb 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b5b81ccb0cd7e6da884e902505704c85f09cb4bb

commit b5b81ccb0cd7e6da884e902505704c85f09cb4bb
Author: Scott Graham <scottmg@chromium.org>
Date: Tue Feb 13 19:29:56 2018

fuchsia: Disable some flaky tests

base_unittests AddressSpaceRandomizationTest.RandomBitCorrelations23
seems newish, but has failed a couple times.

ipc_tests BadMessage has failed a number of times over the last week.

mojo_system_unittests MultiprocessMessagePipeTestWithPeerSupport is also
very flaky over the last week.

Bug:  764018 ,  810448 , 811881
Change-Id: If010457d69209c6a12d36aa4ffe49ae35600b623
Reviewed-on: https://chromium-review.googlesource.com/916724
Commit-Queue: Scott Graham <scottmg@chromium.org>
Commit-Queue: Wez <wez@chromium.org>
Reviewed-by: Wez <wez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536421}
[modify] https://crrev.com/b5b81ccb0cd7e6da884e902505704c85f09cb4bb/testing/buildbot/filters/fuchsia.base_unittests.filter
[modify] https://crrev.com/b5b81ccb0cd7e6da884e902505704c85f09cb4bb/testing/buildbot/filters/fuchsia.ipc_tests.filter
[modify] https://crrev.com/b5b81ccb0cd7e6da884e902505704c85f09cb4bb/testing/buildbot/filters/fuchsia.mojo_system_unittests.filter

Comment 6 by w...@chromium.org, Feb 26 2018

Mergedinto: 816620
Status: Duplicate (was: Assigned)
Project Member

Comment 7 by bugdroid1@chromium.org, Mar 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6a84b3ed1c97d1fad1ebf401dc937e806cc895b7

commit 6a84b3ed1c97d1fad1ebf401dc937e806cc895b7
Author: Wez <wez@chromium.org>
Date: Tue Mar 13 00:16:23 2018

Un-filter some Mojo and IPC tests under Fuchsia.

These tests were flakey due to messages being dropped by the receiver
occasionally when the underlying plaform-specific Channel was closed.

Bug:  764015 ,  764018 ,  756112 ,  810448 ,  815314 ,  816620 
Change-Id: I2b6cfb105660a570c09b29555da7811541d49ec9
Reviewed-on: https://chromium-review.googlesource.com/959674
Commit-Queue: Wez <wez@chromium.org>
Commit-Queue: John Budorick <jbudorick@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542661}
[modify] https://crrev.com/6a84b3ed1c97d1fad1ebf401dc937e806cc895b7/testing/buildbot/filters/fuchsia.ipc_tests.filter
[modify] https://crrev.com/6a84b3ed1c97d1fad1ebf401dc937e806cc895b7/testing/buildbot/filters/fuchsia.mojo_unittests.filter

Sign in to add a comment