Skip to content

Commit 25ff77c

Browse files
committed
Ensure read preference is never overriden, so DB config prevails (#4833)
1 parent b8b2079 commit 25ff77c

File tree

2 files changed

+15
-12
lines changed

2 files changed

+15
-12
lines changed

spec/ReadPreferenceOption.spec.js

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,12 @@ describe_only_db('mongo')('Read preference option', () => {
2727
let myObjectReadPreference = null;
2828
databaseAdapter.database.serverConfig.cursor.calls.all().forEach((call) => {
2929
if (call.args[0].indexOf('MyObject') >= 0) {
30-
myObjectReadPreference = call.args[2].readPreference.preference;
30+
myObjectReadPreference = true;
31+
expect(call.args[2].readPreference).toBeUndefined();
3132
}
3233
});
3334

34-
expect(myObjectReadPreference).toEqual(ReadPreference.PRIMARY);
35+
expect(myObjectReadPreference).toBe(true);
3536

3637
done();
3738
});
@@ -442,18 +443,20 @@ describe_only_db('mongo')('Read preference option', () => {
442443
let myObjectReadPreference2 = null;
443444
databaseAdapter.database.serverConfig.cursor.calls.all().forEach((call) => {
444445
if (call.args[0].indexOf('MyObject0') >= 0) {
445-
myObjectReadPreference0 = call.args[2].readPreference.preference;
446+
myObjectReadPreference0 = true;
447+
expect(call.args[2].readPreference).toBeUndefined();
446448
}
447449
if (call.args[0].indexOf('MyObject1') >= 0) {
448-
myObjectReadPreference1 = call.args[2].readPreference.preference;
450+
myObjectReadPreference1 = true;
451+
expect(call.args[2].readPreference).toBeUndefined();
449452
}
450453
if (call.args[0].indexOf('MyObject2') >= 0) {
451454
myObjectReadPreference2 = call.args[2].readPreference.preference;
452455
}
453456
});
454457

455-
expect(myObjectReadPreference0).toEqual(ReadPreference.PRIMARY);
456-
expect(myObjectReadPreference1).toEqual(ReadPreference.PRIMARY);
458+
expect(myObjectReadPreference0).toBe(true);
459+
expect(myObjectReadPreference1).toBe(true);
457460
expect(myObjectReadPreference2).toEqual(ReadPreference.SECONDARY);
458461

459462
done();
@@ -555,18 +558,20 @@ describe_only_db('mongo')('Read preference option', () => {
555558
let myObjectReadPreference2 = null;
556559
databaseAdapter.database.serverConfig.cursor.calls.all().forEach((call) => {
557560
if (call.args[0].indexOf('MyObject0') >= 0) {
558-
myObjectReadPreference0 = call.args[2].readPreference.preference;
561+
myObjectReadPreference0 = true;
562+
expect(call.args[2].readPreference).toBeUndefined();
559563
}
560564
if (call.args[0].indexOf('MyObject1') >= 0) {
561-
myObjectReadPreference1 = call.args[2].readPreference.preference;
565+
myObjectReadPreference1 = true;
566+
expect(call.args[2].readPreference).toBeUndefined();
562567
}
563568
if (call.args[0].indexOf('MyObject2') >= 0) {
564569
myObjectReadPreference2 = call.args[2].readPreference.preference;
565570
}
566571
});
567572

568-
expect(myObjectReadPreference0).toEqual(ReadPreference.PRIMARY);
569-
expect(myObjectReadPreference1).toEqual(ReadPreference.PRIMARY);
573+
expect(myObjectReadPreference0).toBe(true);
574+
expect(myObjectReadPreference1).toBe(true);
570575
expect(myObjectReadPreference2).toEqual(ReadPreference.SECONDARY);
571576

572577
done();

src/Adapters/Storage/Mongo/MongoStorageAdapter.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -626,8 +626,6 @@ export class MongoStorageAdapter implements StorageAdapter {
626626
readPreference = ReadPreference.NEAREST;
627627
break;
628628
case undefined:
629-
// this is to match existing tests, which were failing as [email protected] don't report readPreference anymore
630-
readPreference = ReadPreference.PRIMARY;
631629
break;
632630
default:
633631
throw new Parse.Error(Parse.Error.INVALID_QUERY, 'Not supported read preference.');

0 commit comments

Comments
 (0)