Opened 13 years ago

Closed 12 years ago

#3746 closed defect (fixed)

segfault in dist_factor.py

Reported by: was Owned by: gfurnish
Priority: blocker Milestone: sage-3.2.2
Component: dsage Keywords:
Cc: Merged in:
Authors: Reviewers:
Report Upstream: Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description

wstein@iras:~/iras/build/sage-3.0.6.final>         ./sage -t -long devel/sage/sage/dsage/dist_functions/dist_factor.py
sage -t -long devel/sage/sage/dsage/dist_functions/dist_factor.pysh: line 1: 17221 Segmentation fault      /home/wstein/iras/build/sage-3.0.6.final/local/bin/python /home/wstein/iras/build/sage-3.0.6.final/tmp/.doctest_dist_factor.py >/tmp/tmpKoKDAX 2>/tmp/tmpz35sr7
[DSage] Closed connection to localhost

A mysterious error (perphaps a memory error?) occurred, which may have crashed doctest.
         [25.0 s]
exit code: 768

----------------------------------------------------------------------
The following tests failed:


        sage -t -long devel/sage/sage/dsage/dist_functions/dist_factor.py
Total time for all tests: 25.0 seconds
wstein@iras:~/iras/build/sage-3.0.6.final> 
wstein@iras:~/iras/build/sage-3.0.6.final> uname -a
Linux iras 2.6.16.46-0.12-default #1 SMP Thu May 17 14:00:09 UTC 2007 ia64 ia64 ia64 GNU/Linux

cpuinfo:
...
processor  : 3
vendor     : GenuineIntel
arch       : IA-64
family     : 32
model      : 0
revision   : 7
archrev    : 0
features   : branchlong, 16-byte atomic ops
cpu number : 0
cpu regs   : 4
cpu MHz    : 1594.000675
itc MHz    : 399.167296
BogoMIPS   : 3186.68
siblings   : 2
physical id: 3
core id    : 1
thread id  : 0

Change History (4)

comment:1 Changed 12 years ago by was

  • Priority changed from major to blocker
  • Summary changed from segfault in dist_factor.py on itanium to segfault in dist_factor.py

This also happens on sage.math (opteron debian):

sage -t -long devel/sage/sage/dsage/dist_functions/dist_factor.pysh: line 1: 19413 Segmentation fault      /home/was/build/sage-3.1.alpha0/local/bin/python /home/was/build/sage-3.1.alpha0/tmp/.doctest_dist_factor.py >/tmp/tmpPwlp8k 2>/tmp/tmpRTHU_D
[DSage] Closed connection to localhost

A mysterious error (perphaps a memory error?) occurred, which may have crashed doctest.
	 [25.5 s]

comment:2 Changed 12 years ago by gfurnish

  • Owner changed from yi to gfurnish
  • Status changed from new to assigned

I mentioned in #4745 that the second of the three patches might fix this -- here is what I think happened to cause this. The race condition in question caused dsage to read in a pickled object from a file before it was done being written to the file. This caused mysterious failures at best and segfaults at worse. With #4745 applied I ran these doctests for 10200 iterations (~7 hours) without a single doctest failure. I think that #4745 kills this heisenbug.

comment:3 Changed 12 years ago by gfurnish

Apparently the last time I tested this I forgot to use long mode, so I reran it after night. After testing for 24722.3 seconds dist_factor failed a test case (looks like a time-out), but it did not segfault. I will continue to stress test this, but I think my earlier assessment is still correct.

comment:4 Changed 12 years ago by mabshoff

  • Resolution set to fixed
  • Status changed from assigned to closed

Fixed by merging #4745 in Sage 3.2.2.alpha2.

Cheers,

Michael

Note: See TracTickets for help on using tickets.