[CDRIVER-2290] OPMsg size for a Document Sequence is encoded as native endianness Created: 18/Sep/17 Updated: 28/Oct/23 Resolved: 20/Oct/17 |
|
| Status: | Closed |
| Project: | C Driver |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 1.9.0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Mark Benvenuto | Assignee: | A. Jesse Jiryu Davis |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Description |
|
Currently, when the C driver writes the length of a document sequence payload in an OpMsg, it writes the length as native-endian instead of little-endian. Here is the problematic line: Support for document sequences was added in the change below, and did the endian encoding correctly: |
| Comments |
| Comment by A. Jesse Jiryu Davis [ 20/Oct/17 ] |
|
It is fixed, but BUILD-3865 had me confused. |
| Comment by A. Jesse Jiryu Davis [ 16/Oct/17 ] |
|
I thought I fixed this, I was tricked by a display quirk of Evergreen. I haven't fixed it completely. |
| Comment by Githook User [ 14/Oct/17 ] |
|
Author: {'email': 'jesse@mongodb.com', 'name': 'A. Jesse Jiryu Davis', 'username': 'ajdavis'}Message: Don't overwrite payload.sequence.size with a little-endian int32. That |
| Comment by Hannes Magnusson [ 18/Sep/17 ] |
|
wow. Hot diddily doo! Than you so much for thorough debugging mark.benvenuto ! That payload length is indeed being written in native endian rather the little endian |
| Comment by A. Jesse Jiryu Davis [ 18/Sep/17 ] |
|
Beautiful, thanks Mark. |