traceback (the last output console):
file "batchpy.py", line 61, in <module> obj.batch_w1() file "batchpy.py", line 49, in batch_w1 batch.put_item(data=item) file "/usr/local/lib/python2.7/dist-packages/boto/dynamodb2/table.py", line 1641, in __exit__ self.resend_unprocessed() file "/usr/local/lib/python2.7/dist-packages/boto/dynamodb2/table.py", line 1718, in resend_unprocessed resp = self.table.connection.batch_write_item(batch_data) file "/usr/local/lib/python2.7/dist-packages/boto/dynamodb2/layer1.py", line 420, in batch_write_item body=json.dumps(params)) file "/usr/local/lib/python2.7/dist-packages/boto/dynamodb2/layer1.py", line 2842, in make_request retry_handler=self._retry_handler) file "/usr/local/lib/python2.7/dist-packages/boto/connection.py", line 954, in _mexe status = retry_handler(response, i, next_sleep) file "/usr/local/lib/python2.7/dist-packages/boto/dynamodb2/layer1.py", line 2876, in _retry_handler response.status, response.reason, data) boto.dynamodb2.exceptions.provisionedthroughputexceededexception: provisionedthroughputexceededexception: 400 bad request {u'message': u'the level of configured provisioned throughput table exceeded. consider increasing provisioning level updatetable api', u'__type': u'com.amazonaws.dynamodb.v20120810#provisionedthroughputexceededexception'}
there 2 ways can handle problem:
increase level of throughput (for option have pay more).
the way have @ points need implement logic @ application level. instance, call dynamodb check exception. if throughput exceeded, sleep seconds , call same query again (this have implemented in our app).
Comments
Post a Comment