Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test standalone/io/test_runner_test can fail because process_test times out instead of crashing #1947

Closed
sgjesse opened this issue Mar 2, 2012 · 13 comments
Labels
area-test Cross-cutting test issues (use area- labels for specific failures; not used for package:test). closed-obsolete Closed as the reported issue is no longer relevant P3 A lower priority bug or feature request

Comments

@sgjesse
Copy link
Contributor

sgjesse commented Mar 2, 2012

See http://build.chromium.org/p/client.dart/builders/vm-win32-debug/builds/373/steps/checked_tests/logs/stdio

@madsager
Copy link
Contributor

madsager commented Mar 2, 2012

Set owner to @whesse.
Added Accepted label.

@a-siva
Copy link
Contributor

a-siva commented Apr 18, 2012

@a-siva
Copy link
Contributor

a-siva commented Apr 18, 2012

Can we skip this test until the flakiness is fixed or at least mark it as
PASS, FAIL.

@whesse
Copy link
Contributor

whesse commented Apr 19, 2012

The root cause is that the test of a crashing process, process_test.exe 0 0 1 1, is sometimes timing out, rather than crashing. This sometimes also leads to an error on a code path with a boolean operator applied to null, where the null comes from a map lookup on a nonexistent key. Fixing by adding the key to the map, and increasing the timeout on the crash test.

The test should be fixed by adding 'verbose': false to the dummy configurations in TestRunnerTest, but it is not clear to me why this doesn't always fail in checked mode, and the most recent error is unclear as well.

The error is in a line:
    if (testCase.output.unexpectedOutput && testCase.configuration['verbose']) {

when the map 'configuration' has no key 'verbose'.
The error we should get, and that we do get in run vm-win32-release/builds/2184 is
stderr:
Unhandled exception:
type 'Null' is not a subtype of type 'bool' of 'boolean expression'.
 0. Function: 'RunningProcess.testComplete' url: 'file:///e:/b/build/slave/vm-win32-release/build/dart/tools/testing/dart/test_runner.dart' line:551 col:67
 1. Function: 'RunningProcess.stepExitHandler' url: 'file:///e:/b/build/slave/vm-win32-release/build/dart/tools/testing/dart/test_runner.dart' line:584 col:19
 
The error I am unclear on is

NullPointerException : method: 'get:_verbose@1bfad15'
Receiver: null
Arguments: []
 0. Function: 'Object.noSuchMethod' url: 'bootstrap' line:717 col:3
 1. Function: 'RunningProcess.testComplete' url: 'file:///e:/b/build/slave/vm-win32-release/build/dart/tools/testing/dart/test_runner.dart' line:551 col:66

from vm-win32-release/builds/2232.
What is this _verbose@1bfad15? And why would get be called on it? Is is some sort of run-time optimization?

@efortuna
Copy link
Contributor

get:_verbose@1bfad15 was a result of attempting to fix the null/boolean bug: http://code.google.com/p/dart/issues/detail?id=2625 You can ignore that error, it should not be occurring in the future.

However, this seems only to be a symptom of the failure. The failure has still happened in traces like here: http://chromegw.corp.google.com/i/client.dart/builders/vm-win32-release/builds/2356/steps/tests/logs/stdio

@whesse
Copy link
Contributor

whesse commented May 1, 2012

@madsager
Copy link
Contributor

madsager commented Jun 7, 2012

Added this to the M1 milestone.

@whesse
Copy link
Contributor

whesse commented Jun 18, 2012

This failure: process_test.exe 0 0 1 1 timing out, is still happening. Most recent failure is on http://build.chromium.org/p/client.dart/builders/vm-linux-debug/builds/2968

Looking at replacing this with a different way of crashing, because this needs to be fixed.

@whesse
Copy link
Contributor

whesse commented Jun 18, 2012

Removed Area-IO label.
Added Area-Test label.

@whesse
Copy link
Contributor

whesse commented Aug 22, 2012

I cannot easily find another way of making a crashing process - calling exit() with a negative argument does not work. We will stop the test failures by allowing the test process_test 0 0 1 1 to time out, as well as crash, until we can figure this out.


Removed this from the M1 milestone.
Added this to the Later milestone.
Removed Priority-Medium label.
Added Priority-Low label.
Changed the title to: "Test standalone/io/test_runner_test can fail because process_test times out instead of crashing".

@whesse
Copy link
Contributor

whesse commented Jan 10, 2013

This is still occuring - the suppression was removed from standalone.status as part of the V2 library upgrade, and the flakiness showed up on the buildbot again.

Adding PASS, FAIL back to standalone.status.

@whesse
Copy link
Contributor

whesse commented Nov 4, 2013

Removed the owner.
Added Triaged label.

@sgjesse
Copy link
Contributor Author

sgjesse commented Nov 4, 2013

The suppression is no longer in standalone.status.

It is only there for simarm and simmips - tracked as issue #12413.


Added AssumedStale label.

@sgjesse sgjesse added Type-Defect P3 A lower priority bug or feature request area-test Cross-cutting test issues (use area- labels for specific failures; not used for package:test). closed-obsolete Closed as the reported issue is no longer relevant labels Nov 4, 2013
@sgjesse sgjesse added this to the Later milestone Nov 4, 2013
copybara-service bot pushed a commit that referenced this issue Feb 13, 2023
…, http_parser, pub_semver, shelf, term_glyph, test, typed_data, webdev

Revisions updated by `dart tools/rev_sdk_deps.dart`.

args (https://github.com/dart-lang/args/compare/bd3ac85..b08471e):
  b08471e  2023-02-09  Sigurd Meldgaard  Suggest command based on aliases (#235)

bazel_worker (https://github.com/dart-lang/bazel_worker/compare/1124692..53871c5):
  53871c5  2023-02-09  Kevin Moore  Migrate to dart_flutter_team_lints, cleanup (#69)

benchmark_harness (https://github.com/dart-lang/benchmark_harness/compare/b1efcf7..a6a0891):
  a6a0891  2023-02-09  Kevin Moore  Require Dart 2.19, update lints to dart_flutter_team_lints (#84)

dartdoc (https://github.com/dart-lang/dartdoc/compare/494a6be..3931595):
  39315954  2023-02-13  Devon Carew  enable additional lints (#3336)
  a52639e7  2023-02-10  Sam Rawlins  Use markdown 7 (#3332)

glob (https://github.com/dart-lang/glob/compare/a828420..f378dc8):
  f378dc8  2023-02-13  Kevin Moore  Update to dart_flutter_team_lints, also cleaned up markdown (#71)

http (https://github.com/dart-lang/http/compare/8386923..f4b365e):
  f4b365e  2023-02-07  Sigurd Meldgaard  Remove dependency on package:path (#865)

http_parser (https://github.com/dart-lang/http_parser/compare/1c0c17a..b3b283b):
  b3b283b  2023-02-08  Kevin Moore  Bump min SDK to 2.17 (#69)

pub_semver (https://github.com/dart-lang/pub_semver/compare/e9c600c..c0e6ea7):
  c0e6ea7  2023-02-12  Devon Carew  Update CHANGELOG.md (#81)
  0d62000  2023-02-12  Kevin Moore  Fix new type error, use dart_flutter_team_lints (#80)

shelf (https://github.com/dart-lang/shelf/compare/9d1fb8a..707c8b2):
  707c8b2  2023-02-07  Kevin Moore  move to pkg:dart_flutter_team_lints (#330)

term_glyph (https://github.com/dart-lang/term_glyph/compare/520784d..d275a8f):
  d275a8f  2023-02-12  Kevin Moore  Fix CI, update lints (#34)

test (https://github.com/dart-lang/test/compare/da7c667..b5e70db):
  b5e70db5  2023-02-10  Jacob MacDonald  Add notes about versioning and publishing to CONTRIBUTING.md (#1929)
  2773daa6  2023-02-09  Jacob MacDonald  update changelog version in test to use ## (#1926)
  9e3072e1  2023-02-09  Danny Tuppeny  Handle absolute paths on Windows (#1923)
  07380027  2023-02-09  Nicholas Shahan  Fix typo in migration doc (#1924)
  f49fc16a  2023-02-09  Kevin Moore  Add auto-publish configuration (#1922)
  5bf28959  2023-02-08  Nate Bosch  Add link to file issue on README (#1921)
  ef81f471  2023-02-08  Nate Bosch  Fix directory name for issue templates (#1920)
  f3bfda9d  2023-02-08  Nate Bosch  Add issue templates (#1919)
  a80f4fd0  2023-02-08  Devon Carew  Refactor top level and package README files (#1918)
  0f4558fe  2023-02-07  Nate Bosch  Prepare to publish test_core and test (#1917)
  39f498c8  2023-02-06  Nate Bosch  Minor readme improvements (#1913)
  2cb07a3f  2023-02-06  Nate Bosch  Rename matches to matchesPattern, accept Pattern (#1907)
  ba6fb1c9  2023-02-06  Jacob MacDonald  Support running tests by absolute file: uri (#1893)
  ffeaec66  2023-02-06  Nate Bosch  Take Condition for async nesting expectations (#1896)
  cdd8c395  2023-02-06  Daniel Chevalier  update vm_service to support 11.0.0 (#1910)
  f2d97bf2  2023-02-06  Nate Bosch  Expand the doc comment for Context (#1902)

typed_data (https://github.com/dart-lang/typed_data/compare/6fbbd95..f858046):
  f858046  2023-02-12  Kevin Moore  fix ci, update analysis options (#61)

webdev (https://github.com/dart-lang/webdev/compare/6255c85..0bae2be):
  0bae2be  2023-02-10  Elliott Brooks (she/her)  Fix lifeline connection logic (#1952)
  4a41cf9  2023-02-10  Anna Gringauze  Support records (#1919)
  d6229e3  2023-02-09  Anna Gringauze  Fix failure on getting a list with out of range offset (#1947)
  f1b15e8  2023-02-09  Anna Gringauze  Fix incorrect list element count (#1944)
  fff4865  2023-02-09  Elliott Brooks (she/her)  Add missing IDs to inspector panel (#1946)
  47287e3  2023-02-08  Elliott Brooks (she/her)  [MV3 Debug Extension] Extension sets the `ide` query parameter for the DevTools URI (#1943)
  1136d51  2023-02-08  Elliott Brooks (she/her)  Catch exceptions in unawaited `Futures` (#1938)
  2cad786  2023-02-07  Anna Gringauze  Cleanup getObject logic for handling offsets and counts (#1936)
  b399e94  2023-02-06  Elliott Brooks (she/her)  Pull out `dart:io`-dependent functions from`/src/utilities/shared.dart` into
`/src/utilities/server.dart` (#1942)

Change-Id: I64bdc5485665ca4c13a331ae7a6c77b1cd3208d8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/282802
Commit-Queue: Devon Carew <devoncarew@google.com>
Auto-Submit: Devon Carew <devoncarew@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
copybara-service bot pushed a commit that referenced this issue Feb 23, 2023
Revisions updated by `dart tools/rev_sdk_deps.dart`.

dartdoc (https://github.com/dart-lang/dartdoc/compare/dba6f94..e4cdbd6):
  e4cdbd6f  2023-02-21  Janice Collins  Record rendering simplification (#3344)

http (https://github.com/dart-lang/http/compare/c13a3f8..1500a71):
  1500a71  2023-02-23  Devon Carew  contribute a pull request labeler workflow (#875)
  e2c4e6f  2023-02-21  Brian Quinlan  Add a link to cronet_http_embedded from cronet_http. (#874)

markdown (https://github.com/dart-lang/markdown/compare/4befe66..ecbffa9):
  ecbffa9  2023-02-22  Kevin Moore  Use latest lints, require Dart 2.19 or later (#524)

shelf (https://github.com/dart-lang/shelf/compare/707c8b2..e3cfe79):
  e3cfe79  2023-02-22  Devon Carew  contribute issue templates and a pull request labeler (#332)

test (https://github.com/dart-lang/test/compare/e56c643..2cc4144):
  2cc4144e  2023-02-22  Nate Bosch  Avoid exceptions for iterable getters (#1954)
  f7fe4f06  2023-02-22  Nate Bosch  Include stack trace for exception in has (#1953)
  ba8e43af  2023-02-22  Nate Bosch  Only grab the first failure in softCheck (#1949)
  34df652b  2023-02-22  Nate Bosch  Flush stdin before test (#1950)
  ae015ef6  2023-02-22  Nidal Bakir  Add Concurrency Testing section to README (#1944)
  4e23d036  2023-02-21  Nate Bosch  Mention .having and .has in migration guide (#1948)
  438c2274  2023-02-21  Nate Bosch  Annotate `has` with `@useResult` (#1947)
  3ddecafd  2023-02-21  Nate Bosch  Add async examples to README (#1946)

tools (https://github.com/dart-lang/tools/compare/a53933c..c7518f7):
  c7518f7  2023-02-22  Elias Yishak  Update to regex to look for underscore delimited labels (#12)

webdev (https://github.com/dart-lang/webdev/compare/ae7eb80..1e7f9b7):
  1e7f9b7  2023-02-22  Anna Gringauze  Create copying sdk configuration provider (#1984)
  26910ba  2023-02-22  Anna Gringauze  Pass SdkLayout to the frontend server (#1986)
  784e28b  2023-02-22  Anna Gringauze  Remove unnecessary awaits (#1982)
  3cbaf37  2023-02-22  Elliott Brooks (she/her)  [MV3 Debug Extension] Support Bolt workflow (#1983)
  0f893e6  2023-02-22  Anna Gringauze  Move project definitions into a separate class (#1975)
  a942b5f  2023-02-22  Anna Gringauze  Add unnecessary_lambdas lint (#1978)
  3774cf8  2023-02-21  Anna Gringauze  Add 'avoid_void_async' lint (#1977)
  705e0ac  2023-02-21  Elliott Brooks (she/her)  [MV3 Debug Extension] Show a warning if multiple Dart apps are in a single page (#1976)

Change-Id: Iea264a18a154e71cd0990e1363951648bec5ceba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/284940
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Auto-Submit: Devon Carew <devoncarew@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-test Cross-cutting test issues (use area- labels for specific failures; not used for package:test). closed-obsolete Closed as the reported issue is no longer relevant P3 A lower priority bug or feature request
Projects
None yet
Development

No branches or pull requests

5 participants