async_task_executor should handle exceptions and requeue tasks if applicable
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MagnetoDB |
New
|
Undecided
|
Unassigned |
Bug Description
async_task_executor needs to handle exceptions and recover if possible by requeuing the failed tasks. Many times C* connection is temporarily unavailable, or schema is in disagreement but it will recover at retry. The failed tasks should be requeued to be processed again.
WARNING cassandra.cluster [-] [control connection] Error connecting to 192.168.19.241:
Traceback (most recent call last):
File "/usr/lib/
return self._try_
File "/usr/lib/
connection = self._cluster.
File "/usr/lib/
return self.connection
File "/usr/lib/
conn = cls(*args, **kwargs)
File "/usr/lib/
[a[4] for a in addresses], sockerr.strerror)
error: [Errno 111] Tried connecting to [('192.168.19.241', 9042)]. Last error: ECONNREFUSED
WARNING cassandra.cluster [-] Node 192.168.19.242 is reporting a schema disagreement: {UUID('
2014-12-30 10:16:02.316 3518 ERROR oslo.messaging.
Traceback (most recent call last):
File "/usr/lib/
incoming.
File "/usr/lib/
return self._do_
File "/usr/lib/
result = getattr(endpoint, method)(ctxt, **new_args)
File "/usr/bin/
table_info = self._table_
File "/usr/lib/
self.
File "/usr/lib/
"".
File "/usr/lib/
raise ClusterIsNotCon
ClusterIsNotCon