Benutzt du Rack::Timeout? Wenn unerwartet eine Timeout-Ausnahme ausgelöst wird, besteht die Möglichkeit, dass der Status verloren geht. (https://github.com/heroku/rack- timeout/blob/master/doc/risks.md ).
Das Erhöhen der vorbereiteten Anweisungsnummer kann in einer Schleife abgefangen werden, wodurch der Fehler der doppelten Anweisung entsteht, und kann nicht wiederhergestellt werden, ohne den Prozess neu zu starten. Schlagen Sie vor, https://github.com/ankane/slowpoke zu implementieren um den Prozess zu beenden/neu zu starten, wenn ein Timeout auftritt.
Lesen Sie mehr zu diesem Problem:
- https://github.com/ ankane/der-ultimative-leitfaden-zu-ruby-timeouts#rack-middleware
- https://github.com/heroku/rack-timeout/issues/ 76
- https://github.com/rails/rails/pull/17607
- https://github.com/rails/rails/issues/22408