[ZODB-Dev] Traceback with RelStorage 1.4.1 + Zope 2.12.12 + python_memcached 1.4.5

Sylvain Viollon sylvain at infrae.com
Fri Oct 22 12:42:55 EDT 2010


Hello,

  I have a Zope 2, using RelStorage and python_memcached. I use
  python_memcached because I use it in some other extension.

  I got the following traceback on a commit (some objects did
  change, and some where added to the database during the
  transaction):

Traceback (most recent call last):
  File ".../eggs/repoze.who-2.0a3-py2.6.egg/repoze/who/middleware.py", line 88, in __call__
    app_iter = app(environ, wrapper.wrap_start_response)
  File ".../eggs/infrae.wsgi-1.1-py2.6.egg/infrae/wsgi/publisher.py", line 364, in __call__
    return publication()
  File ".../eggs/infrae.wsgi-1.1-py2.6.egg/infrae/wsgi/publisher.py", line 302, in __call__
    data = self.publish_and_retry()
  File ".../eggs/infrae.wsgi-1.1-py2.6.egg/infrae/wsgi/publisher.py", line 273, in publish_and_retry
    data = self.publish()
  File ".../eggs/infrae.wsgi-1.1-py2.6.egg/infrae/wsgi/publisher.py", line 266, in publish
    return self.result()
  File ".../eggs/infrae.wsgi-1.1-py2.6.egg/infrae/wsgi/publisher.py", line 165, in result
    self.finish()
  File ".../eggs/infrae.wsgi-1.1-py2.6.egg/infrae/wsgi/publisher.py", line 151, in finish
    self.commit()
  File ".../eggs/infrae.wsgi-1.1-py2.6.egg/infrae/wsgi/publisher.py", line 130, in commit
    self.app.transaction.commit()
  File ".../eggs/Zope2-2.12.12-py2.6-freebsd-8.0-RELEASE-amd64.egg/Zope2/App/startup.py", line 291, in commit
    transaction.commit()
  File ".../eggs/transaction-1.0.0-py2.6.egg/transaction/_manager.py", line 93, in commit
    return self.get().commit()
  File ".../eggs/transaction-1.0.0-py2.6.egg/transaction/_transaction.py", line 322, in commit
    self._commitResources()
  File ".../eggs/transaction-1.0.0-py2.6.egg/transaction/_transaction.py", line 424, in _commitResources
    rm.tpc_finish(self)
  File ".../eggs/ZODB3-3.9.7-py2.6-freebsd-8.0-RELEASE-amd64.egg/ZODB/Connection.py", line 798, in tpc_finish
    self._storage.tpc_finish(transaction, callback)
  File ".../eggs/RelStorage-1.4.1-py2.6.egg/relstorage/storage.py", line 860, in tpc_finish
    self._finish(self._tid, u, d, e)
  File ".../eggs/RelStorage-1.4.1-py2.6.egg/relstorage/storage.py", line 880, in _finish
    self._cache.after_tpc_finish(self._tid)
  File ".../eggs/RelStorage-1.4.1-py2.6.egg/relstorage/cache.py", line 385, in after_tpc_finish
    self.send_queue(tid)
  File ".../eggs/RelStorage-1.4.1-py2.6.egg/relstorage/cache.py", line 332, in send_queue
    client.set_multi(to_send)
  File ".../eggs/python_memcached-1.45-py2.6.egg/memcache.py", line 643, in set_multi
    write("set %s %d %d %d\\r\\n%s\\r\\n" % (key, store_info[0], time, store_info[1], store_info[2]))
TypeError: 'int' object is unsubscriptable

  I could not reproduce this error, but still it is worth to report I guess.

  Regards,

  Sylvain,

-- 
Sylvain Viollon -- Infrae
t +31 10 243 7051 -- http://infrae.com
Hoevestraat 10 3033GC Rotterdam -- The Netherlands


More information about the ZODB-Dev mailing list