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
With the MTRDevice set of APIs, with regard to reading/writing a value to an attribute, we can imagine a scenario:
1. Assume old value is X
2. Write A - fires async write A
3. Read - synchronous and immediately returns A, and fires async real read
4. Async read wins, returns old value X, expected value cache obliterated and we report to client old value X again
5. Async write eventually done
6. Subscription report gets received from device and value A is reported to client
Platform
darwin
Platform Version(s)
No response
Type
Manually tested with SDK
(Optional) If manually tested please explain why this is only manually tested
There does not currently exist unit tests for this.
Anything else?
Given an attribute that the user is interacting with actively, although the eventual value would be correct, the users could potentially see values jumping around incorrectly during change.
The fix here would be to also serialize writes and commands along with reads.
The text was updated successfully, but these errors were encountered:
Reproduction steps
Platform
darwin
Platform Version(s)
No response
Type
Manually tested with SDK
(Optional) If manually tested please explain why this is only manually tested
There does not currently exist unit tests for this.
Anything else?
Given an attribute that the user is interacting with actively, although the eventual value would be correct, the users could potentially see values jumping around incorrectly during change.
The fix here would be to also serialize writes and commands along with reads.
The text was updated successfully, but these errors were encountered: