Skip to content
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

UpdateNOC needs to invalidate sessions on previous fabric #20379

Closed
mrjerryjohns opened this issue Jul 6, 2022 · 1 comment · Fixed by #20461
Closed

UpdateNOC needs to invalidate sessions on previous fabric #20379

mrjerryjohns opened this issue Jul 6, 2022 · 1 comment · Fixed by #20461
Assignees
Labels
spec Mismatch between spec and implementation sve V1.0

Comments

@mrjerryjohns
Copy link
Contributor

Problem

With the groundwork now present in the SDK to correctly abort all communications on a given fabric except a specific exchange, as well as expiring sessions associated with that fabric, we should now fix UpdateNOC to do the same.

See #19910 for an example of this for RemoveFabric.

@mrjerryjohns mrjerryjohns added spec Mismatch between spec and implementation request sve V1.0 labels Jul 6, 2022
@tcarmelveilleux tcarmelveilleux self-assigned this Jul 6, 2022
@mrjerryjohns
Copy link
Contributor Author

FYI @bzbarsky-apple (who I believe was originally going to do this).

tcarmelveilleux added a commit to tcarmelveilleux/connectedhomeip that referenced this issue Jul 7, 2022
- UpdateNOC did not clear session of previous fabric like spec intended
  (project-chip#20379)
- All OpCreds cluster slow commands did not try to early-ack to avoid
  MRP timeouts (project-chip#19132)

Fixes project-chip#20379
Fixes project-chip#19132

This PR:

- Fixes UpdateNOC expiring all sessions for the updated node
- Adds `FlushAcksRightAwayOnSlowCommand` to CommandHandler to flush acks
  on slow commands
- Adds Python tests for UpdateNOC behavior of session expiring
- Adds `ExpireSessions` to Python for testing

Testing done:

- Unit tests all pass
- Cert tests pass
- With the session clearing, previous Python tests failed, until
  I fixed them with the new `ExpireSessions` API
- Observed standalone acks immediately sent on opcreds cluster commands
tcarmelveilleux added a commit that referenced this issue Jul 8, 2022
* Fix UpdateNOC session invalidation and opcreds timing

- UpdateNOC did not clear session of previous fabric like spec intended
  (#20379)
- All OpCreds cluster slow commands did not try to early-ack to avoid
  MRP timeouts (#19132)

Fixes #20379
Fixes #19132

This PR:

- Fixes UpdateNOC expiring all sessions for the updated node
- Adds `FlushAcksRightAwayOnSlowCommand` to CommandHandler to flush acks
  on slow commands
- Adds Python tests for UpdateNOC behavior of session expiring
- Adds `ExpireSessions` to Python for testing

Testing done:

- Unit tests all pass
- Cert tests pass
- With the session clearing, previous Python tests failed, until
  I fixed them with the new `ExpireSessions` API
- Observed standalone acks immediately sent on opcreds cluster commands

* Restyled

* Removed leftover debug
github-actions bot pushed a commit that referenced this issue Jul 8, 2022
* Fix UpdateNOC session invalidation and opcreds timing

- UpdateNOC did not clear session of previous fabric like spec intended
  (#20379)
- All OpCreds cluster slow commands did not try to early-ack to avoid
  MRP timeouts (#19132)

Fixes #20379
Fixes #19132

This PR:

- Fixes UpdateNOC expiring all sessions for the updated node
- Adds `FlushAcksRightAwayOnSlowCommand` to CommandHandler to flush acks
  on slow commands
- Adds Python tests for UpdateNOC behavior of session expiring
- Adds `ExpireSessions` to Python for testing

Testing done:

- Unit tests all pass
- Cert tests pass
- With the session clearing, previous Python tests failed, until
  I fixed them with the new `ExpireSessions` API
- Observed standalone acks immediately sent on opcreds cluster commands

* Restyled

* Removed leftover debug
andy31415 pushed a commit that referenced this issue Jul 9, 2022
* Fix UpdateNOC session invalidation and opcreds timing

- UpdateNOC did not clear session of previous fabric like spec intended
  (#20379)
- All OpCreds cluster slow commands did not try to early-ack to avoid
  MRP timeouts (#19132)

Fixes #20379
Fixes #19132

This PR:

- Fixes UpdateNOC expiring all sessions for the updated node
- Adds `FlushAcksRightAwayOnSlowCommand` to CommandHandler to flush acks
  on slow commands
- Adds Python tests for UpdateNOC behavior of session expiring
- Adds `ExpireSessions` to Python for testing

Testing done:

- Unit tests all pass
- Cert tests pass
- With the session clearing, previous Python tests failed, until
  I fixed them with the new `ExpireSessions` API
- Observed standalone acks immediately sent on opcreds cluster commands

* Restyled

* Removed leftover debug

Co-authored-by: Tennessee Carmel-Veilleux <tennessee.carmelveilleux@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
spec Mismatch between spec and implementation sve V1.0
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants