Skip to content

PHPLIB-475: Use ReadPreference string constant consistently in the code and the doc #1082

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

Merged
merged 10 commits into from
Jun 1, 2023
2 changes: 1 addition & 1 deletion src/Collection.php
Original file line number Diff line number Diff line change
Expand Up @@ -968,7 +968,7 @@ public function mapReduce(JavascriptInterface $map, JavascriptInterface $reduce,

// Check if the out option is inline because we will want to coerce a primary read preference if not
if ($hasOutputCollection) {
$options['readPreference'] = new ReadPreference(ReadPreference::RP_PRIMARY);
$options['readPreference'] = new ReadPreference(ReadPreference::PRIMARY);
}

$server = select_server($this->manager, $options);
Expand Down
2 changes: 1 addition & 1 deletion src/GridFS/CollectionWrapper.php
Original file line number Diff line number Diff line change
Expand Up @@ -359,7 +359,7 @@ private function indexKeysMatch(array $expectedKeys, array $actualKeys): bool
private function isFilesCollectionEmpty(): bool
{
return null === $this->filesCollection->findOne([], [
'readPreference' => new ReadPreference(ReadPreference::RP_PRIMARY),
'readPreference' => new ReadPreference(ReadPreference::PRIMARY),
'projection' => ['_id' => 1],
'typeMap' => [],
]);
Expand Down
2 changes: 1 addition & 1 deletion src/Operation/Watch.php
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@ public function __construct(Manager $manager, ?string $databaseName, ?string $co
}

$options += [
'readPreference' => new ReadPreference(ReadPreference::RP_PRIMARY),
'readPreference' => new ReadPreference(ReadPreference::PRIMARY),
];

if (array_key_exists('fullDocument', $options) && ! is_string($options['fullDocument'])) {
Expand Down
6 changes: 3 additions & 3 deletions src/functions.php
Original file line number Diff line number Diff line change
Expand Up @@ -558,7 +558,7 @@ function select_server(Manager $manager, array $options): Server
$readPreference = extract_read_preference_from_options($options);
if (! $readPreference instanceof ReadPreference) {
// TODO: PHPLIB-476: Read transaction read preference once PHPC-1439 is implemented
$readPreference = new ReadPreference(ReadPreference::RP_PRIMARY);
$readPreference = new ReadPreference(ReadPreference::PRIMARY);
}

return $manager->selectServer($readPreference);
Expand All @@ -578,7 +578,7 @@ function select_server_for_aggregate_write_stage(Manager $manager, array &$optio

/* If there is either no read preference or a primary read preference, there
* is no special server selection logic to apply. */
if ($readPreference === null || $readPreference->getMode() === ReadPreference::RP_PRIMARY) {
if ($readPreference === null || $readPreference->getModeString() === ReadPreference::PRIMARY) {
return select_server($manager, $options);
}

Expand All @@ -594,7 +594,7 @@ function select_server_for_aggregate_write_stage(Manager $manager, array &$optio
* preference and repeat server selection if it previously failed or
* selected a secondary. */
if (! all_servers_support_write_stage_on_secondary($manager->getServers())) {
$options['readPreference'] = new ReadPreference(ReadPreference::RP_PRIMARY);
$options['readPreference'] = new ReadPreference(ReadPreference::PRIMARY);

if ($server === null || $server->isSecondary()) {
return select_server($manager, $options);
Expand Down
14 changes: 7 additions & 7 deletions tests/ClientTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ public function testSelectCollectionInheritsOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertIsArray($debug['typeMap']);
$this->assertSame(['root' => 'array'], $debug['typeMap']);
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
Expand All @@ -106,7 +106,7 @@ public function testSelectCollectionPassesOptions(): void
{
$collectionOptions = [
'readConcern' => new ReadConcern(ReadConcern::LOCAL),
'readPreference' => new ReadPreference(ReadPreference::RP_SECONDARY_PREFERRED),
'readPreference' => new ReadPreference(ReadPreference::SECONDARY_PREFERRED),
'typeMap' => ['root' => 'array'],
'writeConcern' => new WriteConcern(WriteConcern::MAJORITY),
];
Expand All @@ -118,7 +118,7 @@ public function testSelectCollectionPassesOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertIsArray($debug['typeMap']);
$this->assertSame(['root' => 'array'], $debug['typeMap']);
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
Expand All @@ -142,7 +142,7 @@ public function testSelectDatabaseInheritsOptions(): void
{
$uriOptions = [
'readConcernLevel' => ReadConcern::LOCAL,
'readPreference' => 'secondaryPreferred',
'readPreference' => ReadPreference::SECONDARY_PREFERRED,
'w' => WriteConcern::MAJORITY,
];

Expand All @@ -157,7 +157,7 @@ public function testSelectDatabaseInheritsOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertIsArray($debug['typeMap']);
$this->assertSame(['root' => 'array'], $debug['typeMap']);
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
Expand All @@ -168,7 +168,7 @@ public function testSelectDatabasePassesOptions(): void
{
$databaseOptions = [
'readConcern' => new ReadConcern(ReadConcern::LOCAL),
'readPreference' => new ReadPreference(ReadPreference::RP_SECONDARY_PREFERRED),
'readPreference' => new ReadPreference(ReadPreference::SECONDARY_PREFERRED),
'typeMap' => ['root' => 'array'],
'writeConcern' => new WriteConcern(WriteConcern::MAJORITY),
];
Expand All @@ -180,7 +180,7 @@ public function testSelectDatabasePassesOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertIsArray($debug['typeMap']);
$this->assertSame(['root' => 'array'], $debug['typeMap']);
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
Expand Down
8 changes: 4 additions & 4 deletions tests/Collection/CollectionFunctionalTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -371,7 +371,7 @@ public function testWithOptionsInheritsOptions(): void
{
$collectionOptions = [
'readConcern' => new ReadConcern(ReadConcern::LOCAL),
'readPreference' => new ReadPreference(ReadPreference::RP_SECONDARY_PREFERRED),
'readPreference' => new ReadPreference(ReadPreference::SECONDARY_PREFERRED),
'typeMap' => ['root' => 'array'],
'writeConcern' => new WriteConcern(WriteConcern::MAJORITY),
];
Expand All @@ -386,7 +386,7 @@ public function testWithOptionsInheritsOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertIsArray($debug['typeMap']);
$this->assertSame(['root' => 'array'], $debug['typeMap']);
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
Expand All @@ -397,7 +397,7 @@ public function testWithOptionsPassesOptions(): void
{
$collectionOptions = [
'readConcern' => new ReadConcern(ReadConcern::LOCAL),
'readPreference' => new ReadPreference(ReadPreference::RP_SECONDARY_PREFERRED),
'readPreference' => new ReadPreference(ReadPreference::SECONDARY_PREFERRED),
'typeMap' => ['root' => 'array'],
'writeConcern' => new WriteConcern(WriteConcern::MAJORITY),
];
Expand All @@ -408,7 +408,7 @@ public function testWithOptionsPassesOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertIsArray($debug['typeMap']);
$this->assertSame(['root' => 'array'], $debug['typeMap']);
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
Expand Down
30 changes: 15 additions & 15 deletions tests/Database/DatabaseFunctionalTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ public function testCommand(): void
{
$command = ['ping' => 1];
$options = [
'readPreference' => new ReadPreference(ReadPreference::RP_PRIMARY),
'readPreference' => new ReadPreference(ReadPreference::PRIMARY),
];

$cursor = $this->database->command($command, $options);
Expand All @@ -105,7 +105,7 @@ public function testCommandDoesNotInheritReadPreference(): void
$this->markTestSkipped('Test only applies to replica sets');
}

$this->database = new Database($this->manager, $this->getDatabaseName(), ['readPreference' => new ReadPreference(ReadPreference::RP_SECONDARY)]);
$this->database = new Database($this->manager, $this->getDatabaseName(), ['readPreference' => new ReadPreference(ReadPreference::SECONDARY)]);

$command = ['ping' => 1];

Expand All @@ -119,7 +119,7 @@ public function testCommandAppliesTypeMapToCursor(): void
{
$command = ['ping' => 1];
$options = [
'readPreference' => new ReadPreference(ReadPreference::RP_PRIMARY),
'readPreference' => new ReadPreference(ReadPreference::PRIMARY),
'typeMap' => ['root' => 'array'],
];

Expand Down Expand Up @@ -286,7 +286,7 @@ public function testSelectCollectionInheritsOptions(): void
{
$databaseOptions = [
'readConcern' => new ReadConcern(ReadConcern::LOCAL),
'readPreference' => new ReadPreference(ReadPreference::RP_SECONDARY_PREFERRED),
'readPreference' => new ReadPreference(ReadPreference::SECONDARY_PREFERRED),
'typeMap' => ['root' => 'array'],
'writeConcern' => new WriteConcern(WriteConcern::MAJORITY),
];
Expand All @@ -301,7 +301,7 @@ public function testSelectCollectionInheritsOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertIsArray($debug['typeMap']);
$this->assertSame(['root' => 'array'], $debug['typeMap']);
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
Expand All @@ -312,7 +312,7 @@ public function testSelectCollectionPassesOptions(): void
{
$collectionOptions = [
'readConcern' => new ReadConcern(ReadConcern::LOCAL),
'readPreference' => new ReadPreference(ReadPreference::RP_SECONDARY_PREFERRED),
'readPreference' => new ReadPreference(ReadPreference::SECONDARY_PREFERRED),
'typeMap' => ['root' => 'array'],
'writeConcern' => new WriteConcern(WriteConcern::MAJORITY),
];
Expand All @@ -323,7 +323,7 @@ public function testSelectCollectionPassesOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertIsArray($debug['typeMap']);
$this->assertSame(['root' => 'array'], $debug['typeMap']);
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
Expand All @@ -334,7 +334,7 @@ public function testSelectGridFSBucketInheritsOptions(): void
{
$databaseOptions = [
'readConcern' => new ReadConcern(ReadConcern::LOCAL),
'readPreference' => new ReadPreference(ReadPreference::RP_SECONDARY_PREFERRED),
'readPreference' => new ReadPreference(ReadPreference::SECONDARY_PREFERRED),
'writeConcern' => new WriteConcern(WriteConcern::MAJORITY),
];

Expand All @@ -349,7 +349,7 @@ public function testSelectGridFSBucketInheritsOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
$this->assertSame(WriteConcern::MAJORITY, $debug['writeConcern']->getW());
}
Expand All @@ -360,7 +360,7 @@ public function testSelectGridFSBucketPassesOptions(): void
'bucketName' => 'custom_fs',
'chunkSizeBytes' => 8192,
'readConcern' => new ReadConcern(ReadConcern::LOCAL),
'readPreference' => new ReadPreference(ReadPreference::RP_SECONDARY_PREFERRED),
'readPreference' => new ReadPreference(ReadPreference::SECONDARY_PREFERRED),
'writeConcern' => new WriteConcern(WriteConcern::MAJORITY),
];

Expand All @@ -374,7 +374,7 @@ public function testSelectGridFSBucketPassesOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
$this->assertSame(WriteConcern::MAJORITY, $debug['writeConcern']->getW());
}
Expand All @@ -383,7 +383,7 @@ public function testWithOptionsInheritsOptions(): void
{
$databaseOptions = [
'readConcern' => new ReadConcern(ReadConcern::LOCAL),
'readPreference' => new ReadPreference(ReadPreference::RP_SECONDARY_PREFERRED),
'readPreference' => new ReadPreference(ReadPreference::SECONDARY_PREFERRED),
'typeMap' => ['root' => 'array'],
'writeConcern' => new WriteConcern(WriteConcern::MAJORITY),
];
Expand All @@ -397,7 +397,7 @@ public function testWithOptionsInheritsOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertIsArray($debug['typeMap']);
$this->assertSame(['root' => 'array'], $debug['typeMap']);
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
Expand All @@ -408,7 +408,7 @@ public function testWithOptionsPassesOptions(): void
{
$databaseOptions = [
'readConcern' => new ReadConcern(ReadConcern::LOCAL),
'readPreference' => new ReadPreference(ReadPreference::RP_SECONDARY_PREFERRED),
'readPreference' => new ReadPreference(ReadPreference::SECONDARY_PREFERRED),
'typeMap' => ['root' => 'array'],
'writeConcern' => new WriteConcern(WriteConcern::MAJORITY),
];
Expand All @@ -419,7 +419,7 @@ public function testWithOptionsPassesOptions(): void
$this->assertInstanceOf(ReadConcern::class, $debug['readConcern']);
$this->assertSame(ReadConcern::LOCAL, $debug['readConcern']->getLevel());
$this->assertInstanceOf(ReadPreference::class, $debug['readPreference']);
$this->assertSame(ReadPreference::RP_SECONDARY_PREFERRED, $debug['readPreference']->getMode());
$this->assertSame(ReadPreference::SECONDARY_PREFERRED, $debug['readPreference']->getModeString());
$this->assertIsArray($debug['typeMap']);
$this->assertSame(['root' => 'array'], $debug['typeMap']);
$this->assertInstanceOf(WriteConcern::class, $debug['writeConcern']);
Expand Down
Loading