[BUG] `GET /channels/{channelId}/statistics` intermittently returns 500 during undeploy of an unrelated channel
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 38/100
Rechercherichtung
The GET /channels/{channelId}/statistics path (and the includeUndeployed variant) currently reads D_MS tables for every channel, so a concurrent undeploy of another channel can drop a table and raise DonkeyDaoException wrapping SQLSyntaxErrorException; serialising that exception then fails and the client only sees a generic 500. Start from the statistics handler and the Donkey DAO that enumerates those tables. Done when a request naming channel A only reads what it needs for A and the two-thread repro no longer 500s.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Repro:
- In one thread, loop: deploy channel B, send a message through it, remove channel B.
- In another thread, loop:
GET /channels/{A}/statistics.GET /channels/statistics?channelId={A}&includeUndeployed=truefails the same way.
Expected:
- A request naming channel A reads only what it needs to answer about channel A.
Actual:
- Each request reads
D_MS<n>for every channel the server knows about, A or not. - Roughly one request in forty fails with HTTP 500 under the loop above.
- The server log shows
DonkeyDaoException: java.sql.SQLSyntaxErrorException: Table/View 'D_MS<n>' does not exist,
for the channel being removed, not for A. - The client sees only
{"message":"Request failed.","status":"500"}, because serialising the
SQLExceptioninto the error response throws as well.
- Vorherrschende Sprache
- Java
- Sterne
- 227
- Forks
- 81
- Ø Merge
- 3 T. 6 Std.
- Gemergte PRs (30 T.)
- 15
Entwicklungsumgebung
- Enthält ein Dockerfile oder eine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus OpenIntegrationEngine/engine
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
OpenIntegrationEngine/engine#485 ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
OpenIntegrationEngine/engine#478 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
OpenIntegrationEngine/engine#355 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
OpenIntegrationEngine/engine#347 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
OpenIntegrationEngine/engine#313 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in OpenIntegrationEngine/engine
Ähnliche Issues
-
enhancement Improvement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
zowe/zowe-client-java-sdk#647 ·
-
NullPointerException when a `DeserializationProblemHandler` returns `null` for `byte[]` (single value unwrapped) and `char[]` elementsEvtl. vergeben @Marti2203 hat das heute übernommen. Offen
Schwierigkeit 2/5 Ein halber Tag Anfängerfreundlichkeit 88/100
FasterXML/jackson-databind#6300 ·
Maintainer antworten meist innerhalb von 1 Tag
-
content good first issue
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 95/100
cpinitiative/usaco-guide#6699 ·
Maintainer antworten meist innerhalb von 1 Tag
-
BC remittance upload: a claim MSP refused (S03) is saved with a blank status instead of refused (F)Evtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offentype: bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
carlos-emr/carlos#4933 ·
Maintainer antworten meist innerhalb von 1 Tag
-
[studio] Data source connection tests leak loading and results across modal sessionsEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
apache/rocketmq-dashboard#6925 ·
Maintainer antworten meist innerhalb von 3 Tagen