-
Notifications
You must be signed in to change notification settings - Fork 115
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deterministic behavior for transactionId validation #1488
Comments
The transactionId validation should also take into account of async race conditions and make sure that sequence of synchronous calls to get/set parameters have well defined behavior. e.g.: const param = sender.getParameters();
const promise = sender.setParameters(param);
sender.getParameters();
promise.then(...); // resolve or reject? Also note that the validation of |
Do you mean that step 7 in the |
Made a new issue for the race condition, since it's a bit more general than just |
Not completely closed by that PR, see issue #1520. |
Currently the steps are as follows:
The specified rules have not been very consistent:
getParameters()
does not storetransactionId
to any internal slot.(Update: Misread the sentence, it applies to all fields insetParameters()
saystransactionId
validation is applied the way same asparameters.encodings
, but the field is outside ofparameters.encodings
.parameters
)setParameters()
settransactionId
to a new value, but that is overridden again when callinggetParameters()
.To fix this, a proper internal slot should be defined and transactionId validation in
setParameters()
should be done in separate steps.The text was updated successfully, but these errors were encountered: