[DRIVERS-2231] ChangeStream Spec: fullDocument field in ChangeStreamOptions should be an optional to handle "default" case. Created: 01/Jul/19 Updated: 09/Sep/22 Resolved: 09/Sep/22 |
|
| Status: | Closed |
| Project: | Drivers |
| Component/s: | Change Streams |
| Fix Version/s: | None |
| Type: | Spec Change | Priority: | Major - P3 |
| Reporter: | Benji Rewis (Inactive) | Assignee: | Nataly Carbonell |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Driver Changes: | Needed | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Downstream Changes Summary: | Currently, the ChangeStream spec defines the fullDocument field in ChangeStreamOptions as a String that defaults to the string literal "default". As of server version 3.6, sending "default" and sending no fullDocument field have identical behavior, so fullDocument should be defined as an Optional<String> to avoid using the "default" string literal. Drivers should sync legacy change streams tests to mongodb/specifications@31edce6 and legacy retryable reads tests to mongodb/specifications@006a4f1 . |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Driver Compliance: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Description |
|
Currently, the ChangeStream spec defines the fullDocument field in ChangeStreamOptions as a String that defaults to the string literal "default". As of server version 3.6, sending "default" and sending no fullDocument field have identical behavior, so fullDocument should be defined as an Optional<String> to avoid using the "default" string literal. |
| Comments |
| Comment by Githook User [ 13/Apr/22 ] |
|
Author: {'name': 'Jeremy Mikola', 'email': 'jmikola@gmail.com', 'username': 'jmikola'}Message:
Per
|
| Comment by Githook User [ 17/Jul/19 ] |
|
Author: {'name': 'Prashant Mital', 'username': 'prashantmital', 'email': '5883388+prashantmital@users.noreply.github.com'}Message: |
| Comment by Prashant Mital (Inactive) [ 17/Jul/19 ] |
|
Follow up PR: https://github.com/mongodb/specifications/pull/610 |
| Comment by Githook User [ 16/Jul/19 ] |
|
Author: {'name': 'Nataly Carbonell', 'email': 'natcarbonell97@gmail.com', 'username': 'ncarbon'}Message: |
| Comment by Jeremy Mikola [ 08/Jul/19 ] |
| Comment by Jeremy Mikola [ 08/Jul/19 ] |
Just to confirm, server versions since 3.6.0 have historically allowed the fullDocument option within the $changeStream pipeline operator to be omitted? Just want to double check before reviewing mongodb/specifications#600 to verify that this change has absolutely no impact on the server (given that change streams were only introduced in 3.6.0). |