Opened 8 years ago

Closed 7 years ago

#15534 closed defect (fixed)

Corrupt pickle in cluster_seed.py

Reported by: vbraun Owned by:
Priority: major Milestone: sage-6.4
Component: combinatorics Keywords: cluster algebras random_fail
Cc: simonking Merged in:
Authors: Volker Braun Reviewers: Frédéric Chapoton
Report Upstream: N/A Work issues:
Branch: 7f98706 (Commits, GitHub, GitLab) Commit: 7f98706c1bdd93315276c60d6b7c275b3a21a213
Dependencies: Stopgaps:

Status badges

Description

The following is an unlikely but occasional error on the buildbot (on "mod"), see http://build.sagemath.org/sage/builders/%20fast%20UW%20mod%20%28Ubuntu%208-64%29%20incremental/builds/0/steps/shell_3/logs/stdio

The problem seems to be that the pickle hasn't been flushed to disc before trying to read it, e.g. http://stackoverflow.com/questions/1746825/python-valueerror-insecure-string-pickle

sage -t --long src/sage/combinat/cluster_algebra_quiver/cluster_seed.py
**********************************************************************
File "src/sage/combinat/cluster_algebra_quiver/cluster_seed.py", line 1847, in sage.combinat.cluster_algebra_quiver.cluster_seed.ClusterSeed.mutation_type
Failed example:
    S.mutation_type() # long time
Exception raised:
    Traceback (most recent call last):
      File "/mnt/SSD1/mod_buildslave/sage_git/build/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 480, in _run
        self.execute(example, compiled, test.globs)
      File "/mnt/SSD1/mod_buildslave/sage_git/build/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 839, in execute
        exec compiled in globs
      File "<doctest sage.combinat.cluster_algebra_quiver.cluster_seed.ClusterSeed.mutation_type[7]>", line 1, in <module>
        S.mutation_type() # long time
      File "/mnt/SSD1/mod_buildslave/sage_git/build/local/lib/python2.7/site-packages/sage/combinat/cluster_algebra_quiver/cluster_seed.py", line 1874, in mutation_type
        self._mutation_type = self._quiver.mutation_type()
      File "/mnt/SSD1/mod_buildslave/sage_git/build/local/lib/python2.7/site-packages/sage/combinat/cluster_algebra_quiver/quiver.py", line 855, in mutation_type
        mut_type_part = _mutation_type_from_data(dg_component.order(), dig6, compute_if_necessary=True)
      File "/mnt/SSD1/mod_buildslave/sage_git/build/local/lib/python2.7/site-packages/sage/combinat/cluster_algebra_quiver/mutation_type.py", line 1243, in _mutation_type_from_data
        data = load_data(n)
      File "cachefunc.pyx", line 749, in sage.misc.cachefunc.CachedFunction.__call__ (sage/misc/cachefunc.c:3356)
      File "/mnt/SSD1/mod_buildslave/sage_git/build/local/lib/python2.7/site-packages/sage/combinat/cluster_algebra_quiver/mutation_type.py", line 1214, in load_data
        data_new = cPickle.load(f)
    ValueError: insecure string pickle
**********************************************************************

Change History (10)

comment:1 Changed 8 years ago by vbraun_spam

  • Milestone changed from sage-6.1 to sage-6.2

comment:2 Changed 8 years ago by chapoton

  • Keywords cluster algebras added

comment:3 Changed 8 years ago by vbraun_spam

  • Milestone changed from sage-6.2 to sage-6.3

comment:4 Changed 8 years ago by vbraun

  • Keywords random_fail added

comment:5 Changed 8 years ago by vbraun_spam

  • Milestone changed from sage-6.3 to sage-6.4

comment:6 Changed 7 years ago by vbraun

  • Component changed from packages: experimental to combinatorics

comment:7 Changed 7 years ago by vbraun

  • Branch set to u/vbraun/corrupt_pickle_in_cluster_seed_py

comment:8 Changed 7 years ago by vbraun

  • Authors set to Volker Braun
  • Commit set to 7f98706c1bdd93315276c60d6b7c275b3a21a213
  • Status changed from new to needs_review

New commits:

7f98706Write file without race

comment:9 Changed 7 years ago by chapoton

  • Reviewers set to Frédéric Chapoton
  • Status changed from needs_review to positive_review

Looks good to me. Thanks, Volker.

comment:10 Changed 7 years ago by vbraun

  • Branch changed from u/vbraun/corrupt_pickle_in_cluster_seed_py to 7f98706c1bdd93315276c60d6b7c275b3a21a213
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.