After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 682074 - Failing Test Suite
Failing Test Suite
Status: RESOLVED DUPLICATE of bug 733325
Product: glib
Classification: Platform
Component: gregex
2.33.x
Other Linux
: Normal normal
: ---
Assigned To: gtkdev
gtkdev
Depends on:
Blocks:
 
 
Reported: 2012-08-17 08:24 UTC by Dominique Leuenberger
Modified: 2014-11-23 07:59 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Dominique Leuenberger 2012-08-17 08:24:03 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?
Comment 1 Dominique Leuenberger 2012-08-17 09:17:19 UTC
Also verified on i586 => same issue.
Comment 2 Dominique Leuenberger 2012-08-17 09:46:01 UTC
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)
Comment 3 Christian Persch 2012-08-17 10:39:04 UTC
Are you using system pcre instead of the bundled one perhaps? Also, what's the exact error output of regex test?
Comment 4 Dominique Leuenberger 2012-08-17 11:03:52 UTC
(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...
Comment 5 Christian Persch 2012-08-17 11:11:59 UTC
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).
Comment 6 Christian Persch 2012-08-17 11:12:33 UTC
Or always require the same system pcre version as the bundled one.
Comment 7 Dominique Leuenberger 2012-08-17 11:14:04 UTC
ok.. that might lead to an issue in configure:
PCRE_REQUIRED_VERSION=8.13
=> should that be 8.31 ?
Comment 8 Christian Persch 2012-08-17 11:16:24 UTC
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') ?
Comment 9 Dominique Leuenberger 2012-08-17 11:29:31 UTC
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.
Comment 10 Christian Persch 2012-08-17 11:39:55 UTC
Right, those ones pass on 8.31 only.
Comment 11 Dominique Leuenberger 2012-08-17 14:43:21 UTC
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
Comment 12 Christian Persch 2014-11-23 07:59:48 UTC

*** This bug has been marked as a duplicate of bug 733325 ***