|
I looked into this community forum post and I think it describes a real bug.
Summary
Almost all operations use a composite server selector that includes a LatencySelector to filter out high-latency servers.
See default Collection read selector:
description.CompositeSelector([]description.ServerSelector{
|
description.ReadPrefSelector(rp),
|
description.LatencySelector(db.client.localThreshold),
|
})
|
However, the ChangeStream server selector seems to not use a LatencySelector, only a ReadPrefSelector.
See ChangeStream selector:
cs := &ChangeStream{
|
client: config.client,
|
registry: config.registry,
|
streamType: config.streamType,
|
options: options.MergeChangeStreamOptions(opts...),
|
selector: description.ReadPrefSelector(config.readPreference),
|
cursorOptions: config.client.createBaseCursorOptions(),
|
}
|
Is that intentional or a bug?
|