Opened 4 years ago

Last modified 4 years ago

#27393 new defect

GAP's Guava package segfaults on Cygwin

Reported by: Erik Bray Owned by:
Priority: major Milestone:
Component: packages: optional Keywords:
Cc: Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description

If the gap_packages optional package is installed, there is some code enabled in sage.coding.linear_code which uses the Guava package. However, some of the tests that use it fail on Cygwin with:

sage -t --long src/sage/coding/linear_code.py
**********************************************************************
File "src/sage/coding/linear_code.py", line 3134, in sage.coding.linear_code.AbstractLinearCode.weight_distribution
Failed example:
    C.weight_distribution(algorithm="leon")   # optional - gap_packages (Guava package)
Exception raised:
    Traceback (most recent call last):
      File "/home/embray/src/sagemath/sage/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 671, in _run
        self.compile_and_execute(example, compiler, test.globs)
      File "/home/embray/src/sagemath/sage/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 1095, in compile_and_execute
        exec(compiled, globs)
      File "<doctest sage.coding.linear_code.AbstractLinearCode.weight_distribution[8]>", line 1, in <module>
        C.weight_distribution(algorithm="leon")   # optional - gap_packages (Guava package)
      File "sage/misc/cachefunc.pyx", line 1950, in sage.misc.cachefunc.CachedMethodCaller.__call__ (build/cythonized/sage/misc/cachefunc.c:10265)
        w = self._instance_call(*args, **kwds)
      File "sage/misc/cachefunc.pyx", line 1826, in sage.misc.cachefunc.CachedMethodCaller._instance_call (build/cythonized/sage/misc/cachefunc.c:9750)
        return self.f(self._instance, *args, **kwds)
      File "/home/embray/src/sagemath/sage/local/lib/python2.7/site-packages/sage/coding/linear_code.py", line 3184, in weight_distribution
        lines = subprocess.check_output([os.path.join(guava_bin_dir, 'wtdist'), input])
      File "/home/embray/src/sagemath/sage/local/lib/python2.7/subprocess.py", line 223, in check_output
        raise CalledProcessError(retcode, cmd, output=output)
    CalledProcessError: Command '['/home/embray/src/sagemath/sage/local/share/gap/pkg/guava-3.14/bin/x86_64-unknown-cygwin-default64/wtdist', '/home/embray/.sage/temp/NAVI-Brick/6764/tmp_7ZlhoX::code']' returned non-zero exit status -11

The "exit status -11" indicates a segmentation fault in the wtdist program, whatever that is.

Since gap_packages is an optional package not installed by default I don't think this is urgent, but it would be good to find out what's going on.

Originally reported in #26930.

Change History (2)

comment:1 Changed 4 years ago by Erik Bray

Milestone: sage-8.7sage-8.8

comment:2 Changed 4 years ago by Erik Bray

Milestone: sage-8.8

As the Sage-8.8 release milestone is pending, we should delete the sage-8.8 milestone for tickets that are not actively being worked on or that still require significant work to move forward. If you feel that this ticket should be included in the next Sage release at the soonest please set its milestone to the next release milestone (sage-8.9).

Note: See TracTickets for help on using tickets.