Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cockroach support - tid conflicts #222

Closed
bloodbare opened this issue Jan 26, 2018 · 0 comments
Closed

Cockroach support - tid conflicts #222

bloodbare opened this issue Jan 26, 2018 · 0 comments

Comments

@bloodbare
Copy link
Member

We are experiencing lots of conflicts errors without the rediscache module. The tid allocation does seems to be enough accurate or fast:

  File "/usr/local/lib/python3.6/site-packages/guillotina/factory/app.py", line 84, in _handle
    return await super()._handle(request)
  File "/usr/local/lib/python3.6/site-packages/aiohttp/web.py", line 325, in _handle
    resp = yield from handler(request)
  File "/usr/local/lib/python3.6/site-packages/aiohttp/web_middlewares.py", line 93, in impl
    return (yield from handler(request))
  File "/usr/local/lib/python3.6/site-packages/guillotina/traversal.py", line 229, in handler
    await commit(request, warn=False)
  File "/usr/local/lib/python3.6/site-packages/guillotina/transactions.py", line 22, in commit
    await get_tm(request).commit(request)
  File "/usr/local/lib/python3.6/site-packages/guillotina/db/transaction_manager.py", line 100, in commit
    return await shield(self._commit(request=request, txn=txn))
  File "/usr/local/lib/python3.6/site-packages/guillotina/db/transaction_manager.py", line 109, in _commit
    await txn.commit()
  File "/usr/local/lib/python3.6/site-packages/guillotina/db/transaction.py", line 276, in commit
    return await self._commit()
  File "/usr/local/lib/python3.6/site-packages/guillotina/db/transaction.py", line 290, in _commit
    await self.tpc_commit()
  File "/usr/local/lib/python3.6/site-packages/guillotina/db/transaction.py", line 345, in tpc_commit
    await self._store_object(obj, oid)
  File "/usr/local/lib/python3.6/site-packages/guillotina/db/transaction.py", line 331, in _store_object
    await self._manager._storage.store(oid, serial, writer, obj, self)
  File "/usr/local/lib/python3.6/site-packages/guillotina/db/storages/cockroach.py", line 262, in store
    oid, txn, old_serial, writer)
guillotina.exceptions.TIDConflictError: Mismatch of tid of object being updated. This is likely caused by a cache invalidation race condition and should be an edge case. This should resolve on request retry..```

Cockroach version: 1.0.3
Guillotina version: 2.3.17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants