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

IM encoding spec rename/update several IB, needs to update the corresponding code in app/MessageDef #9520

Closed
yunhanw-google opened this issue Sep 7, 2021 · 4 comments
Assignees
Labels

Comments

@yunhanw-google
Copy link
Contributor

Problem

IM encoding spec rename/update several IB, needs to update the corresponding code in app/MessageDef

@msandstedt
Copy link
Contributor

Mentioned here: #9510 (comment)

Among other things, SubscriptionID needs to be changed from 64bit to 32bit. Likewise, the special 'invalid' subscription ID used in the PR, UINT64_MAX, needs handling and a #define or constexpr.

@yunhanw-google
Copy link
Contributor Author

yep, agree. thanks

@mrjerryjohns
Copy link
Contributor

I think it'd best if we broke this down into some smaller issues/bits of work, since there are a number of fairly significant changes involved:

  • The shift away from StatusReports to StatusResponses. We should break these down by interaction (1 PR to fix StatusReports in-response to Reports already went in, see Add IM status response support and replace status report with status response for IM read/subscribe #9706).
    • StatusResponse to a SubscribeRequest in the case of an error.
    • StatusResponse to a TimedRequest
    • StatusResponse to a WriteRequest that has timed out
    • StatusResponse to an InvokeRequest
  • The actual format of 'embedded status codes' within some of these Actions (e.g ReportData, WriteResponse). These were not well defined before, but now are, and take on the form of either a 16-bit IM status code, or a cluster-specific status code. This actually alters some of our existing IM application-facing APIs.
  • For each interaction, any alterations to the existing message format for the actions involved, as well as their widths (e.g subscription ID as mentioned above)
  • For ReportData and WriteRequest specifically, the actual format of how attribute data is expressed is now quite different, and has slightly different chunking semantics.

I think it'd be best if we focused on each interaction and assigned a distinct issue for each.

@mrjerryjohns
Copy link
Contributor

All have been completed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants