-
Notifications
You must be signed in to change notification settings - Fork 81
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix: JS clients must not release tickets for pending operations (#6591)
When a necessary operation is still running, clients must not release upstream tickets. This has mostly worked by the server running fast enough or by the websocket transport serializing operations in a way that we can't always rely on. Testing this is difficult to reliably do - the ticket has some manual steps that generally make it possible to see the issue, and we're exploring other options to make bugs like this more obvious. At this time, there is no good way to put an integration test in that verifies correct behavior efficiently. Fixes #6056 Fixes DH-18486
- Loading branch information
Showing
2 changed files
with
63 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
15 changes: 15 additions & 0 deletions
15
web/client-api/src/main/java/io/deephaven/web/client/fu/JsAbortSignal.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
package io.deephaven.web.client.fu; | ||
|
||
import elemental2.dom.AbortSignal; | ||
import jsinterop.annotations.JsPackage; | ||
import jsinterop.annotations.JsProperty; | ||
import jsinterop.annotations.JsType; | ||
|
||
/** | ||
* Backport of elemental2 1.2.3's change to include the reason field. | ||
*/ | ||
@JsType(isNative = true, namespace = JsPackage.GLOBAL, name = "AbortSignal") | ||
public interface JsAbortSignal extends AbortSignal { | ||
@JsProperty | ||
Object getReason(); | ||
} |