Skip to content

UserWarning: row partially committed #2

Description

@grantjenks

This morning in Travis:

======================================================================
ERROR: Stress test multiple threads and processes.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/travis/virtualenv/python3.4.2/lib/python3.4/site-packages/nose/case.py", line 198, in runTest
    self.test(*self.arg)
  File "/home/travis/build/grantjenks/python-diskcache/tests/stress_test_fanout.py", line 280, in stress_test_mp
    stress_test()
  File "/home/travis/build/grantjenks/python-diskcache/tests/stress_test_fanout.py", line 244, in stress_test
    cache.check()
  File "/home/travis/build/grantjenks/python-diskcache/diskcache/fanout.py", line 135, in check
    return sum((shard.check(fix=fix) for shard in self._shards), [])
  File "/home/travis/build/grantjenks/python-diskcache/diskcache/fanout.py", line 135, in <genexpr>
    return sum((shard.check(fix=fix) for shard in self._shards), [])
  File "/home/travis/build/grantjenks/python-diskcache/diskcache/core.py", line 841, in check
    rowid, self._disk.get(key, raw)
UserWarning: row 10 partially commited with key (0.8579395219751248, 0.8579395219751248, 0.8579395219751248, 0.8579395219751248, 0.8579395219751248, 0.8579395219751248, 0.8579395219751248, 0.8579395219751248, 0.8579395219751248, 0.8579395219751248, 0.8579395219751248)
----------------------------------------------------------------------

I'm not sure how that happened. What would cause two threads/processes to abort the same set operation in DiskCache? Maybe SQLite would do so?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions