GNOME Bugzilla – Bug 682074
Failing Test Suite
Last modified: 2014-11-23 07:59:48 UTC
While packaging up glib 2.33.8 and enabling the test suite, I ran across this failure in it: (tested on x86_64) /regex/new-fail/86: FAIL GTester: last random seed: R02Saca1db0e5a806b232e8e0581f1687449 /bin/sh: line 1: 3588 Terminated G_DEBUG=gc-friendly MALLOC_CHECK_=2 MALLOC_PERTURB_=$((${RANDOM:-256} % 256)) ../../glib/gtester --verbose testing option-context option-argv0 keyfile fileutils test-printf protocol rand strfuncs string markup-parse markup-collect markup-escape markup-subparser array-test bytes hostutils gvariant mem-overflow utf8-performance utils regex base64 sequence scannerapi shell collate utf8-pointer utf8-validate utf8-misc unicode checksum hmac hash cache date node convert list slist queue tree uri dir pattern logging error bookmarkfile gdatetime timeout environment mappedfile dataset sort atomic bitlock mutex rec-mutex rwlock once cond thread slice hook mainloop private asyncqueue 1bit-mutex 642026 642026-ec 1bit-emufutex spawn-multithreaded spawn-singlethread gwakeup gwakeup-fallback unix-multithreaded unix unix-nothreads include make[4]: *** [test-nonrecursive] Error 143 Is there anything else I can provide as information?
Also verified on i586 => same issue.
the failing check is: (regex.c) TEST_NEW_FAIL ("(?|(?<a>A)|(?<b>B))", 0, G_REGEX_ERROR_EXTRA_SUBPATTERN_NAME); 'removing' that one, the next failure in the test suite would be: TEST: option-argv0... (pid=1564) /option/argv0: ** ERROR:option-argv0.c:47:test_platform_argv0: assertion failed: (strcmp (g_get_prgname(), "option-argv0") == 0 || strcmp (g_get_prgname (), "lt-option-argv0") == 0) FAIL: option-argv0 (by removing I just mean skipping that test.. no fix done)
Are you using system pcre instead of the bundled one perhaps? Also, what's the exact error output of regex test?
(In reply to comment #3) > Are you using system pcre instead of the bundled one perhaps? Also, what's the > exact error output of regex test? configure'd using --with-pcre=system, indeed. pcre 8.30 being used. All that is being printed has been pasted...
Hmm so it's likely because the internal pcre is 8.31. I guess we could either make the entire test not run for system pcre, or ifdef some tests (all those that depend on pcre version greater than the one we require in configure).
Or always require the same system pcre version as the bundled one.
ok.. that might lead to an issue in configure: PCRE_REQUIRED_VERSION=8.13 => should that be 8.31 ?
No that's not a typo, it captures only the API requirements atm. Actually. This particular test should pass on 8.30 already... Can you get the 8.30 (and 8.31) pcre tarballs and run its test suite ('make check') ?
I might have gotten the wrong checks after all.. seems those two are actually the main cause: TEST_NEW_FAIL ("(*:0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEFG)XX", 0, G_REGEX_ERROR_NAME_TOO_LONG); TEST_NEW_FAIL ("\\u0100", G_REGEX_RAW | G_REGEX_JAVASCRIPT_COMPAT, G_REGEX_ERROR_CHARACTER_VALUE_TOO_LARGE); Not sure if those should pass on 8.30 too or not.
Right, those ones pass on 8.31 only.
I can confirm that with pcre 8.31, the 'regex' based tests pass... which does not mean the test suite passes :) TEST: gdbus-exit-on-close... (pid=27948) /gdbus/exit-on-close/default: ** ERROR:gdbus-exit-on-close.c:193:test_exit_on_close: stdout of child process (27962) failed to match: *Remote peer vanished with error: Underlying GIOStream returned 0 bytes on an async read (g-io-error-quark, 0). Exiting.* FAIL GTester: last random seed: R02S2334b9a147c7ea17a542cd7de9319695
*** This bug has been marked as a duplicate of bug 733325 ***