diff --git a/src/Schema/PostgreSQLSchemaManager.php b/src/Schema/PostgreSQLSchemaManager.php index cb9a39fc9a9..c40bb3ddc69 100644 --- a/src/Schema/PostgreSQLSchemaManager.php +++ b/src/Schema/PostgreSQLSchemaManager.php @@ -120,6 +120,7 @@ public function listSchemaNames(): array FROM information_schema.schemata WHERE schema_name NOT LIKE 'pg\_%' AND schema_name != 'information_schema' +AND schema_name != 'public' SQL ); } diff --git a/tests/Functional/Schema/PostgreSQLSchemaManagerTest.php b/tests/Functional/Schema/PostgreSQLSchemaManagerTest.php index a7e75cc6b58..eaab6dfa0d4 100644 --- a/tests/Functional/Schema/PostgreSQLSchemaManagerTest.php +++ b/tests/Functional/Schema/PostgreSQLSchemaManagerTest.php @@ -50,11 +50,14 @@ public function testGetSearchPath(): void public function testGetSchemaNames(): void { + $createSchemaSQL = 'CREATE SCHEMA schema_retrieval_test'; + $this->connection->executeStatement($createSchemaSQL); + assert($this->schemaManager instanceof PostgreSQLSchemaManager); $names = $this->schemaManager->getSchemaNames(); - self::assertContains('public', $names, 'The public schema should be found.'); + self::assertContains('schema_retrieval_test', $names, 'The schema_retrieval_test schema should be found.'); } public function testSupportDomainTypeFallback(): void