Skip to content

Commit 7320219

Browse files
mbasmanovameta-codesync[bot]
authored andcommitted
refactor: Migrate test and fuzzer code to ConnectorRegistry API
Summary: Replace legacy free functions (registerConnector, unregisterConnector, getConnector) with ConnectorRegistry methods across all test, fuzzer, benchmark, and example code in velox/. This prepares for deprecating the free functions in a follow-up commit. Differential Revision: D98961767
1 parent d5b0e4d commit 7320219

33 files changed

+137
-68
lines changed

velox/benchmarks/QueryBenchmarkBase.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
#include <iostream>
1919
#include "velox/common/base/SuccinctPrinter.h"
2020
#include "velox/common/file/FileSystems.h"
21+
#include "velox/connectors/ConnectorRegistry.h"
2122
#include "velox/connectors/hive/HiveConnector.h"
2223
#include "velox/dwio/dwrf/RegisterDwrfReader.h"
2324
#include "velox/dwio/parquet/RegisterParquetReader.h"
@@ -210,7 +211,8 @@ void QueryBenchmarkBase::initialize() {
210211
connector::hive::HiveConnectorFactory factory;
211212
auto hiveConnector =
212213
factory.newConnector(kHiveConnectorId, properties, ioExecutor_.get());
213-
connector::registerConnector(hiveConnector);
214+
connector::ConnectorRegistry::global().insert(
215+
hiveConnector->connectorId(), hiveConnector);
214216
parquet::registerParquetReaderFactory();
215217
dwrf::registerDwrfReaderFactory();
216218
}

velox/connectors/fuzzer/tests/FuzzerConnectorTestBase.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
* limitations under the License.
1515
*/
1616

17+
#include "velox/connectors/ConnectorRegistry.h"
1718
#include "velox/connectors/fuzzer/FuzzerConnector.h"
1819
#include "velox/exec/tests/utils/OperatorTestBase.h"
1920
#include "velox/vector/fuzzer/VectorFuzzer.h"
@@ -28,11 +29,12 @@ class FuzzerConnectorTestBase : public exec::test::OperatorTestBase {
2829
OperatorTestBase::SetUp();
2930
connector::fuzzer::FuzzerConnectorFactory factory;
3031
auto fuzzerConnector = factory.newConnector(kFuzzerConnectorId, nullptr);
31-
connector::registerConnector(fuzzerConnector);
32+
connector::ConnectorRegistry::global().insert(
33+
fuzzerConnector->connectorId(), fuzzerConnector);
3234
}
3335

3436
void TearDown() override {
35-
connector::unregisterConnector(kFuzzerConnectorId);
37+
connector::ConnectorRegistry::global().erase(kFuzzerConnectorId);
3638
OperatorTestBase::TearDown();
3739
}
3840

velox/connectors/hive/iceberg/tests/IcebergConnectorTest.cpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
#include "velox/connectors/hive/iceberg/IcebergConnector.h"
1818
#include <gtest/gtest.h>
19+
#include "velox/connectors/ConnectorRegistry.h"
1920
#include "velox/connectors/hive/HiveConfig.h"
2021
#include "velox/connectors/hive/iceberg/tests/IcebergTestBase.h"
2122

@@ -27,12 +28,13 @@ class IcebergConnectorTest : public test::IcebergTestBase {
2728
protected:
2829
static void resetIcebergConnector(
2930
const std::shared_ptr<const config::ConfigBase>& config) {
30-
unregisterConnector(test::kIcebergConnectorId);
31+
ConnectorRegistry::global().erase(test::kIcebergConnectorId);
3132

3233
IcebergConnectorFactory factory;
3334
auto icebergConnector =
3435
factory.newConnector(test::kIcebergConnectorId, config);
35-
registerConnector(icebergConnector);
36+
ConnectorRegistry::global().insert(
37+
icebergConnector->connectorId(), icebergConnector);
3638
}
3739
};
3840

@@ -45,7 +47,7 @@ TEST_F(IcebergConnectorTest, connectorConfiguration) {
4547
resetIcebergConnector(customConfig);
4648

4749
// Verify connector was registered successfully with custom config.
48-
auto icebergConnector = getConnector(test::kIcebergConnectorId);
50+
auto icebergConnector = ConnectorRegistry::tryGet(test::kIcebergConnectorId);
4951
ASSERT_NE(icebergConnector, nullptr);
5052

5153
auto config = icebergConnector->connectorConfig();
@@ -57,7 +59,7 @@ TEST_F(IcebergConnectorTest, connectorConfiguration) {
5759
}
5860

5961
TEST_F(IcebergConnectorTest, connectorProperties) {
60-
auto icebergConnector = getConnector(test::kIcebergConnectorId);
62+
auto icebergConnector = ConnectorRegistry::tryGet(test::kIcebergConnectorId);
6163
ASSERT_NE(icebergConnector, nullptr);
6264

6365
ASSERT_TRUE(icebergConnector->canAddDynamicFilter());

velox/connectors/hive/iceberg/tests/IcebergReadTest.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
#include "velox/common/base/tests/GTestUtils.h"
2020
#include "velox/common/encode/Base64.h"
2121
#include "velox/common/file/FileSystems.h"
22+
#include "velox/connectors/ConnectorRegistry.h"
2223
#include "velox/connectors/hive/HiveConnectorSplit.h"
2324
#include "velox/connectors/hive/iceberg/IcebergConnector.h"
2425
#include "velox/connectors/hive/iceberg/IcebergDeleteFile.h"
@@ -58,11 +59,12 @@ class HiveIcebergTest : public HiveConnectorTestBase {
5859
std::make_shared<config::ConfigBase>(
5960
std::unordered_map<std::string, std::string>()),
6061
ioExecutor_.get());
61-
connector::registerConnector(icebergConnector);
62+
connector::ConnectorRegistry::global().insert(
63+
icebergConnector->connectorId(), icebergConnector);
6264
}
6365

6466
void TearDown() override {
65-
connector::unregisterConnector(kIcebergConnectorId);
67+
connector::ConnectorRegistry::global().erase(kIcebergConnectorId);
6668
HiveConnectorTestBase::TearDown();
6769
}
6870

velox/connectors/hive/iceberg/tests/IcebergTestBase.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818

1919
#include <filesystem>
2020

21+
#include "velox/connectors/ConnectorRegistry.h"
2122
#include "velox/connectors/hive/TableHandle.h"
2223
#include "velox/connectors/hive/iceberg/IcebergColumnHandle.h"
2324
#include "velox/connectors/hive/iceberg/IcebergConfig.h"
@@ -46,7 +47,8 @@ void IcebergTestBase::SetUp() {
4647
std::make_shared<config::ConfigBase>(
4748
std::unordered_map<std::string, std::string>()),
4849
ioExecutor_.get());
49-
registerConnector(icebergConnector);
50+
ConnectorRegistry::global().insert(
51+
icebergConnector->connectorId(), icebergConnector);
5052

5153
connectorSessionProperties_ = std::make_shared<config::ConfigBase>(
5254
std::unordered_map<std::string, std::string>(), true);
@@ -75,7 +77,7 @@ void IcebergTestBase::TearDown() {
7577
opPool_.reset();
7678
root_.reset();
7779
queryCtx_.reset();
78-
unregisterConnector(kIcebergConnectorId);
80+
ConnectorRegistry::global().erase(kIcebergConnectorId);
7981
HiveConnectorTestBase::TearDown();
8082
}
8183

velox/connectors/hive/paimon/tests/PaimonConnectorTest.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717

1818
#include <gtest/gtest.h>
1919

20+
#include "velox/connectors/ConnectorRegistry.h"
2021
#include "velox/connectors/hive/HiveConfig.h"
2122
#include "velox/exec/tests/utils/HiveConnectorTestBase.h"
2223

@@ -33,17 +34,17 @@ class PaimonConnectorTest : public exec::test::HiveConnectorTestBase {
3334
std::unordered_map<std::string, std::string>{});
3435
auto connector =
3536
PaimonConnectorFactory().newConnector(kPaimonConnectorId, config);
36-
registerConnector(connector);
37+
ConnectorRegistry::global().insert(connector->connectorId(), connector);
3738
}
3839

3940
void TearDown() override {
40-
unregisterConnector(kPaimonConnectorId);
41+
ConnectorRegistry::global().erase(kPaimonConnectorId);
4142
HiveConnectorTestBase::TearDown();
4243
}
4344
};
4445

4546
TEST_F(PaimonConnectorTest, connectorRegistration) {
46-
auto connector = getConnector(kPaimonConnectorId);
47+
auto connector = ConnectorRegistry::tryGet(kPaimonConnectorId);
4748
ASSERT_NE(connector, nullptr);
4849
ASSERT_NE(connector->connectorConfig(), nullptr);
4950
}

velox/connectors/hive/storage_adapters/gcs/tests/GcsMultipleEndpointsTest.cpp

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
#include <folly/init/Init.h>
1919

2020
#include "gtest/gtest.h"
21+
#include "velox/connectors/ConnectorRegistry.h"
2122
#include "velox/connectors/hive/HiveConnector.h"
2223
#include "velox/connectors/hive/HiveConnectorSplit.h"
2324
#include "velox/connectors/hive/storage_adapters/gcs/RegisterGcsFileSystem.h"
@@ -70,8 +71,10 @@ class GcsMultipleEndpointsTest : public testing::Test,
7071
std::string(connectorId2),
7172
gcsEmulatorTwo_->hiveConfig(config2Override),
7273
ioExecutor_.get());
73-
connector::registerConnector(hiveConnector1);
74-
connector::registerConnector(hiveConnector2);
74+
connector::ConnectorRegistry::global().insert(
75+
hiveConnector1->connectorId(), hiveConnector1);
76+
connector::ConnectorRegistry::global().insert(
77+
hiveConnector2->connectorId(), hiveConnector2);
7578
}
7679

7780
void TearDown() override {
@@ -192,8 +195,8 @@ TEST_F(GcsMultipleEndpointsTest, baseEndpoints) {
192195

193196
testJoin(kExpectedRows, gcsBucket, kConnectorId1, kConnectorId2);
194197

195-
connector::unregisterConnector(std::string(kConnectorId1));
196-
connector::unregisterConnector(std::string(kConnectorId2));
198+
connector::ConnectorRegistry::global().erase(std::string(kConnectorId1));
199+
connector::ConnectorRegistry::global().erase(std::string(kConnectorId2));
197200
}
198201

199202
} // namespace facebook::velox::filesystems

velox/connectors/hive/storage_adapters/s3fs/tests/S3MultipleEndpointsTest.cpp

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
#include <folly/init/Init.h>
1818

1919
#include "gtest/gtest.h"
20+
#include "velox/connectors/ConnectorRegistry.h"
2021
#include "velox/connectors/hive/HiveConnector.h"
2122
#include "velox/connectors/hive/storage_adapters/s3fs/RegisterS3FileSystem.h"
2223
#include "velox/connectors/hive/storage_adapters/s3fs/S3Util.h"
@@ -71,8 +72,10 @@ class S3MultipleEndpoints : public S3Test, public ::test::VectorTestBase {
7172
std::string(connectorId2),
7273
minioSecondServer_->hiveConfig(config2Override),
7374
ioExecutor_.get());
74-
connector::registerConnector(hiveConnector1);
75-
connector::registerConnector(hiveConnector2);
75+
connector::ConnectorRegistry::global().insert(
76+
hiveConnector1->connectorId(), hiveConnector1);
77+
connector::ConnectorRegistry::global().insert(
78+
hiveConnector2->connectorId(), hiveConnector2);
7679
}
7780

7881
void TearDown() override {
@@ -191,8 +194,8 @@ TEST_F(S3MultipleEndpoints, baseEndpoints) {
191194

192195
testJoin(kExpectedRows, outputDirectory, kConnectorId1, kConnectorId2);
193196

194-
connector::unregisterConnector(std::string(kConnectorId1));
195-
connector::unregisterConnector(std::string(kConnectorId2));
197+
connector::ConnectorRegistry::global().erase(std::string(kConnectorId1));
198+
connector::ConnectorRegistry::global().erase(std::string(kConnectorId2));
196199
}
197200

198201
TEST_F(S3MultipleEndpoints, bucketEndpoints) {
@@ -218,8 +221,8 @@ TEST_F(S3MultipleEndpoints, bucketEndpoints) {
218221

219222
testJoin(kExpectedRows, outputDirectory, kConnectorId1, kConnectorId2);
220223

221-
connector::unregisterConnector(std::string(kConnectorId1));
222-
connector::unregisterConnector(std::string(kConnectorId2));
224+
connector::ConnectorRegistry::global().erase(std::string(kConnectorId1));
225+
connector::ConnectorRegistry::global().erase(std::string(kConnectorId2));
223226
}
224227

225228
} // namespace facebook::velox

velox/connectors/hive/storage_adapters/s3fs/tests/S3ReadTest.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
#include <gtest/gtest.h>
1919

2020
#include "velox/common/memory/Memory.h"
21+
#include "velox/connectors/ConnectorRegistry.h"
2122
#include "velox/connectors/hive/HiveConnector.h"
2223
#include "velox/connectors/hive/storage_adapters/s3fs/RegisterS3FileSystem.h"
2324
#include "velox/connectors/hive/storage_adapters/s3fs/tests/S3Test.h"
@@ -43,14 +44,15 @@ class S3ReadTest : public S3Test, public ::test::VectorTestBase {
4344
connector::hive::HiveConnectorFactory factory;
4445
auto hiveConnector =
4546
factory.newConnector(kHiveConnectorId, minioServer_->hiveConfig());
46-
connector::registerConnector(hiveConnector);
47+
connector::ConnectorRegistry::global().insert(
48+
hiveConnector->connectorId(), hiveConnector);
4749
parquet::registerParquetReaderFactory();
4850
}
4951

5052
void TearDown() override {
5153
parquet::unregisterParquetReaderFactory();
5254
filesystems::finalizeS3FileSystem();
53-
connector::unregisterConnector(kHiveConnectorId);
55+
connector::ConnectorRegistry::global().erase(kHiveConnectorId);
5456
S3Test::TearDown();
5557
}
5658
};

velox/connectors/hive/storage_adapters/test_common/InsertTest.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
#include <gtest/gtest.h>
1919

2020
#include "velox/common/memory/Memory.h"
21+
#include "velox/connectors/ConnectorRegistry.h"
2122
#include "velox/connectors/hive/HiveConnector.h"
2223
#include "velox/connectors/hive/HiveDataSink.h"
2324
#include "velox/dwio/parquet/RegisterParquetReader.h"
@@ -38,7 +39,8 @@ class InsertTest : public velox::test::VectorTestBase {
3839
connector::hive::HiveConnectorFactory factory;
3940
auto hiveConnector = factory.newConnector(
4041
exec::test::kHiveConnectorId, hiveConfig, ioExecutor);
41-
connector::registerConnector(hiveConnector);
42+
connector::ConnectorRegistry::global().insert(
43+
hiveConnector->connectorId(), hiveConnector);
4244

4345
parquet::registerParquetReaderFactory();
4446
parquet::registerParquetWriterFactory();
@@ -48,7 +50,7 @@ class InsertTest : public velox::test::VectorTestBase {
4850
parquet::unregisterParquetReaderFactory();
4951
parquet::unregisterParquetWriterFactory();
5052

51-
connector::unregisterConnector(exec::test::kHiveConnectorId);
53+
connector::ConnectorRegistry::global().erase(exec::test::kHiveConnectorId);
5254
}
5355

5456
void runInsertTest(

0 commit comments

Comments
 (0)