arXiv / arxiv-submission-ui

User interface of NG submit system.
MIT License
2 stars 6 forks source link

Frequently get arxiv.submission.services.classic.exceptions.TransactionFailed #141

Closed bdc34 closed 4 years ago

bdc34 commented 5 years ago

Describe the bug

I run the docker-compose up, then run flask outside of docker and when I go to create a new submission I sometimes get a TransactionFailed exception. About 9 out of 10 times I get this. Every now and then I get this when trying to do other steps too.

arxiv.submission.services.classic.exceptions.TransactionFailed: Failed to execute transaction

Traceback (most recent call last)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/submission/services/classic/util.py", line 87, in transaction
yield session
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/submission/core.py", line 183, in save
after, consequent_events = event.commit(_store_event)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/submission/domain/event/base.py", line 280, in commit
_, after = store(self, self.before, self.after)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/submission/core.py", line 193, in _store_event
return classic.store_event(event, before, after, StreamPublisher.put)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/submission/services/classic/__init__.py", line 75, in inner
return func(*args, **kwargs)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/submission/services/classic/__init__.py", line 404, in store_event
func(event, before, after)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/submission/services/stream/stream.py", line 126, in put
PartitionKey=self.partition_key)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/botocore/client.py", line 357, in _api_call
return self._make_api_call(operation_name, kwargs)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/botocore/client.py", line 661, in _make_api_call
raise error_class(parsed_response, operation_name)
The above exception was the direct cause of the following exception:
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/flask/app.py", line 2328, in __call__
return self.wsgi_app(environ, start_response)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/base/middleware/base.py", line 132, in __call__
response: WSGIResponse = self.app(environ, start)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/base/middleware/base.py", line 132, in __call__
response: WSGIResponse = self.app(environ, start)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/flask/app.py", line 2314, in wsgi_app
response = self.handle_exception(e)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/flask/app.py", line 1760, in handle_exception
reraise(exc_type, exc_value, tb)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/flask/_compat.py", line 36, in reraise
raise value
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/flask/app.py", line 2311, in wsgi_app
response = self.full_dispatch_request()
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/flask/app.py", line 1834, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/flask/app.py", line 1737, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/flask/_compat.py", line 36, in reraise
raise value
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/flask/app.py", line 1832, in full_dispatch_request
rv = self.dispatch_request()
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/flask/app.py", line 1818, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/users/auth/decorators.py", line 242, in wrapper
return func(*args, **kwargs)
File "/home/bdc34/workspace/submission-ui/submit/routes/ui.py", line 188, in create_submission
'Create a new submission')
File "/home/bdc34/workspace/submission-ui/submit/routes/ui.py", line 148, in handle
**kwargs)
File "/home/bdc34/workspace/submission-ui/submit/controllers/create.py", line 52, in create
submission, _ = save(command)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/submission/core.py", line 189, in save
return after, list(all_)
File "/home/bdc34/.pyenv/versions/3.6.7/lib/python3.6/contextlib.py", line 99, in __exit__
self.gen.throw(type, value, traceback)
File "/home/bdc34/.pyenv/versions/3.6.7/envs/submission-ui/lib/python3.6/site-packages/arxiv/submission/services/classic/util.py", line 103, in transaction
raise TransactionFailed('Failed to execute transaction') from e
arxiv.submission.services.classic.exceptions.TransactionFailed: Failed to execute transaction

Going to the flask inside docker and creating a submission, then going back to the non-docker flask works to then test things.

To Reproduce See above.

Desktop (please complete the following information):

bdc34 commented 4 years ago

Closing. A lot has changed since this.