johnny-cache icon indicating copy to clipboard operation
johnny-cache copied to clipboard

ORA-22922: nonexistent LOB value during loading of data in a transaction

Open erny opened this issue 4 years ago • 0 comments

I get the following error when trying to deserialize django data and only with cache enabled. (Johnny cache 1.4, Django 1.4.18)

Traceback (most recent call last):
  File "/opt/tangram/tangramdt/tangram_base/src/tangram/apps/api/deploy.py", line 285, in import_process_def
    transaction.commit()
  File "/opt/tangram/tangramdt/buildout/eggs/johnny_cache-1.4-py2.7.egg/johnny/transaction.py", line 145, in newfun
    self._flush(commit=commit, using=using)
  File "/opt/tangram/tangramdt/buildout/eggs/johnny_cache-1.4-py2.7.egg/johnny/transaction.py", line 133, in _flush
    self.cache_backend.set(key, value, self.timeout)
  File "/opt/tangram/tangramdt/buildout/eggs/Django-1.4.18-py2.7.egg/django/core/cache/backends/memcached.py", line 64, in set
    self._cache.set(key, value, self._get_memcache_timeout(timeout))
  File "/opt/tangram/tangramdt/buildout/eggs/python_memcached-1.48-py2.7.egg/memcache.py", line 565, in set
    return self._set("set", key, val, time, min_compress_len)
  File "/opt/tangram/tangramdt/buildout/eggs/python_memcached-1.48-py2.7.egg/memcache.py", line 802, in _set
    return _unsafe_set()
  File "/opt/tangram/tangramdt/buildout/eggs/python_memcached-1.48-py2.7.egg/memcache.py", line 780, in _unsafe_set
    store_info = self._val_to_store_info(val, min_compress_len)
  File "/opt/tangram/tangramdt/buildout/eggs/python_memcached-1.48-py2.7.egg/memcache.py", line 751, in _val_to_store_info
    pickler.dump(val)
DatabaseError: ORA-22922: nonexistent LOB value

As a workaround I surround it with a cache.disable() / cache.enable()

erny avatar Jul 16 '19 16:07 erny