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

PackToAny incorrectly serializes UInt16 data #323

Open
dixonjoel opened this issue Nov 2, 2023 · 0 comments
Open

PackToAny incorrectly serializes UInt16 data #323

dixonjoel opened this issue Nov 2, 2023 · 0 comments

Comments

@dixonjoel
Copy link
Collaborator

dixonjoel commented Nov 2, 2023

Software

grpc-labview 1.0.0.1. We're stuck on this version in MeasurementLink because of various incompatibilities in the latest grpc-labview.

Steps to reproduce

  1. Unzip the attached LV project. It contains a client and a server.
  2. Run the server.
  3. Open PackToAnyTest.vi and run it. Observe the byte stream.

In BugService >> Server API >> Start Sync.vi, I'm implementing the Get Any message. You can see I use the PackToAny.vim. The way the project was saved, the byte stream is correct. However, if you change the representation of 'item1' and 'item2' in the cluster constant to UInt16, the byte stream is different even though the values are the same.

In GetAny_server.Run Service.vi, I register the 'mypackage_thecluster' message which I am packing with a cluster of two UInt16s. Cluster to gRPC LabVIEW Message.vi turns these into the gRPC U32 type since there aren't any U16s. This is correct. However, the packing should coerce the values to U32 as well.

Here are the different byte streams. The right one is correct.
image

BugReproducing.zip

AB#2570849

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

No branches or pull requests

1 participant