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

Guava test suite fails with glibc 2.40 #98

Closed
schopin-pro opened this issue Aug 20, 2024 · 0 comments · Fixed by #99
Closed

Guava test suite fails with glibc 2.40 #98

schopin-pro opened this issue Aug 20, 2024 · 0 comments · Fixed by #99

Comments

@schopin-pro
Copy link
Contributor

Hi,

While testing the Ubuntu archive with the newest glibc for the upcoming 24.10 release, we've noticed that the gap-guava tests fail on x86-64 against that new version of glibc.

You can test using a Ubuntu Oracular container, e.g lxc launch ubuntu-daily:oracular and enabling oracular-proposed in /etc/apt/sources.list.d/ubuntu.sources, then apt update && apt install -t oracular-proposed libc6.

I suspect it's a race condition somewhere, since the bug doesn't show when compiling with ThreadSanitizer:

oracular-dev in …/guava on  master
at 11:43:37 ⬢ [Systemd] ❯ make clean > /dev/null

oracular-dev in …/guava on  master
at 11:43:47 ⬢ [Systemd] ❯ make -j9 &> /dev/null

oracular-dev in …/guava on  master
at 11:44:08 ⬢ [Systemd] ❯ echo 'SetPackagePath("guava", Directory(".")); LoadPackage("guava"); Test(Filename(DirectoriesPackageLibrary("guava", "tst"), "guava.tst"));' | gap
 ┌───────┐   GAP 4.13.1 of 2024-06-11
 │  GAP  │   https://www.gap-system.org
 └───────┘   Architecture: x86_64-pc-linux-gnu-default64-kv9
 Configuration:  gmp 6.3.0, GASMAN, readline
 Loading the library and packages ...
 Packages:   GAPDoc 1.6.7
 Try '??help' for help. See also '?copyright', '?cite' and '?authors'
gap>
   ____                             |
  /                \          /   --+--  Version 3.19
 /       |     | |\ \        / /|   |
|    __  |     | | \ \      / / |          the GUAVA Group
|      | |     | |--\ \    / /--|
 \     | |     | |   \ \  / /   |
  \___/   \___/  |    \ \/ /    |

 Homepage: https://gap-packages.github.io/guava
 Report issues at https://github.com/gap-packages/guava/issues
true
########> Diff in ./tst/guava.tst:649
# Input is:
p := CodeIsomorphism( C1, C2 );
# Expected output:
(2,13,7,10,8,3,5,4,14)(12,15)
# But found:
Syntax error: expression expected in /tmp/gaptempfile.VzsYeY:1
GUAVA_TEMP_VAR :=   &
                   ^
 false
 ########
########> Diff in ./tst/guava.tst:651
# Input is:
C3 := PermutedCode( C1, p );
# Expected output:
a linear [15,5,7]5 permuted code
# But found:
Error, no method found! For debugging hints type ?Recovery from NoMe\
thodFound
Error, no 1st choice method found for `PermutedCode' on 2 arguments
########
########> Diff in ./tst/guava.tst:653
# Input is:
C2 = C3;
# Expected output:
true
# But found:
Error, Variable: 'C3' must have a value
########
guava.tst
msecs: 2153
false
gap> %                                                                                                                                                                                                                                                 
oracular-dev in …/guava on  master took 2s
at 11:44:14 ⬢ [Systemd] ❯ make clean > /dev/null

oracular-dev in …/guava on  master
at 11:44:23 ⬢ [Systemd] ❯ CFLAGS=-fsanitize=thread LDFLAGS=-fsanitize=thread make -j9 &> /dev/null

oracular-dev in …/guava on  master took 4s
at 11:44:30 ⬢ [Systemd] ❯ echo 'SetPackagePath("guava", Directory(".")); LoadPackage("guava"); Test(Filename(DirectoriesPackageLibrary("guava", "tst"), "guava.tst"));' | gap
 ┌───────┐   GAP 4.13.1 of 2024-06-11
 │  GAP  │   https://www.gap-system.org
 └───────┘   Architecture: x86_64-pc-linux-gnu-default64-kv9
 Configuration:  gmp 6.3.0, GASMAN, readline
 Loading the library and packages ...
 Packages:   GAPDoc 1.6.7
 Try '??help' for help. See also '?copyright', '?cite' and '?authors'
gap>
   ____                             |
  /                \          /   --+--  Version 3.19
 /       |     | |\ \        / /|   |
|    __  |     | | \ \      / / |          the GUAVA Group
|      | |     | |--\ \    / /--|
 \     | |     | |   \ \  / /   |
  \___/   \___/  |    \ \/ /    |

 Homepage: https://gap-packages.github.io/guava
 Report issues at https://github.com/gap-packages/guava/issues
true
guava.tst
msecs: 2160
true
gap> % 
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant