You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm using Sentry raven for error notifications. Sometimes it fails to serialize context_hash to json because Bunny::Channel instance in delivery_info of context_hash causes
SystemStackError: stack level too deep
As result:
RabbitMQ keeps message as Unacked
Such messages number may reach number of prefetched messages for worker
Worker hangs without performing any workload
Sneakers handles only StandardError and its descendants here and can not handle SystemStackError because it is not a StandardError.
Previously I fixed similar bug in another place. And I would be happy to do the same here.
But I think that it would be better to rescue from Exception in both places and re-raise exception in case of Interrupt, NoMemoryError and other exceptions that should not be swallowed.
WDYT?
The text was updated successfully, but these errors were encountered:
Hello, I've found a bug that makes Sneakers not to report acknowledge state on error.
Wiki suggests to pass
context_hash
to error notification agents. linkI'm using Sentry raven for error notifications. Sometimes it fails to serialize
context_hash
to json becauseBunny::Channel
instance indelivery_info
ofcontext_hash
causesAs result:
Sneakers handles only
StandardError
and its descendants here and can not handleSystemStackError
because it is not aStandardError
.Previously I fixed similar bug in another place. And I would be happy to do the same here.
But I think that it would be better to rescue from
Exception
in both places and re-raise exception in case ofInterrupt
,NoMemoryError
and other exceptions that should not be swallowed.WDYT?
The text was updated successfully, but these errors were encountered: