Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
1eae50e
KqpRun sync stable version with main (ydb-platform#6671)
uzhastik Sep 12, 2024
cfd84af
Merge ydb-platform#5932 ydb-platform#5984 ydb-platform#6257 ydb-platf…
uzhastik Sep 12, 2024
b07716e
YQ-3405 fixed endless retries for external error (#6722)
GrigoriyPA Jul 16, 2024
faad053
YQ-3439 added retries for CURLE_COULDNT_RESOLVE_HOST (#6749)
GrigoriyPA Jul 16, 2024
88d0e02
YQ-3152 fix error failed to execute callable ResWrite! (#6939)
GrigoriyPA Jul 22, 2024
2f4cb25
AsyncDecompressing + lz4 fix (ydb-platform#6888)
uzhastik Sep 12, 2024
f16771e
YDB FQ: avoid outdated syntax "SELECT * FROM cluster.db.table" (copy …
uzhastik Sep 12, 2024
bd7afda
merge fq ydb stable 2024 07 29 (ydb-platform#7215)
uzhastik Sep 12, 2024
63dbb3b
YDB-2568 Enable match_recognize in ydb / q-stable-ydb-24-2 (ydb-platf…
uzhastik Sep 12, 2024
0e6f23e
merge: check vector access (#7474) (#7591)
uzhastik Aug 9, 2024
22d8210
YDB FQ: add MySQL / Greenplum to yql_generic_source_factory.cpp (#7622)
vitalyisaev2 Aug 9, 2024
0888fa9
Merging inference updates (ydb-platform#7929)
evanevanevanevannnn Aug 13, 2024
ea37afc
YQ-3410 improve s3 url escape, added '#', '?' symbols (#7921)
GrigoriyPA Aug 19, 2024
2704034
YQ-3460 fix error attempt to read after eof (ydb-platform#7942)
uzhastik Sep 12, 2024
3cd2a33
YQ-3154 improve error in s3 applicator actor (#8008)
GrigoriyPA Aug 20, 2024
daf4f21
YQ-3568 fix error sent large get operation (#8073)
GrigoriyPA Aug 21, 2024
de4c3cf
inference win build fix (ydb-platform#8076)
uzhastik Sep 12, 2024
1eb9d38
YQ-3363 fix internal error for insert without params (#8120)
GrigoriyPA Aug 23, 2024
9f7fd20
YQ-3570 added s3 wildcards validations (#8244)
GrigoriyPA Aug 26, 2024
4d05dd9
YQ-3566 fix sql injection in create binding request (ydb-platform#8275)
GrigoriyPA Aug 27, 2024
8e51320
listing fix (ydb-platform#7643) (ydb-platform#8280)
uzhastik Sep 12, 2024
11bc673
YQ-3600 fixed sessions leak in metadata service (#8346)
GrigoriyPA Aug 28, 2024
5b72c32
Merge #8604 (#8643)
vitalyisaev2 Sep 3, 2024
73790aa
Merging inference updates (ydb-platform#8616)
uzhastik Sep 12, 2024
53761c4
YQ-3151 added issues for timeout and cancelled (ydb-platform#8805)
uzhastik Sep 12, 2024
c0e68f7
Fix erroneous finish on TDqInputMergeBlockStreamValue (#8927)
GrigoriyPA Sep 9, 2024
131ec5b
Inference projections support and additional parameters filtering (yd…
uzhastik Sep 12, 2024
f073f6b
fix build after bad merge
uzhastik Sep 13, 2024
c905e3d
more build fixes
uzhastik Sep 13, 2024
516d2f1
ydbd build fixed
uzhastik Sep 13, 2024
2f48ec1
fix kqp ut build, add inference tests
uzhastik Sep 13, 2024
377b8e3
add inference tests, fix kqprun build
uzhastik Sep 15, 2024
2e701ce
Removed deprecated proto field (#7842)
evanevanevanevannnn Aug 16, 2024
cacc5f8
fix build for query_replay_yt
uzhastik Sep 15, 2024
6d95664
fix external_source ut build
uzhastik Sep 15, 2024
5e83f6c
AsyncDecoding and HttpGateway have been fixed (#9118) (#9140)
dorooleg Sep 13, 2024
cf25aff
fix build
uzhastik Sep 15, 2024
131b40d
YQ kqprun pass allow local files into runtime listing (#7844)
uzhastik Sep 15, 2024
125e6be
fresh s3 code, fix builds
uzhastik Sep 15, 2024
92a64ac
fix dqrun build
uzhastik Sep 15, 2024
a40b1a0
fix ut build
uzhastik Sep 15, 2024
8047269
fix query_replay build
uzhastik Sep 15, 2024
e44f4af
fix kqp join tests, remove generic style tests
uzhastik Sep 15, 2024
65b6783
fix match-recognize sql tests
uzhastik Sep 15, 2024
7a2500b
fix style tests
uzhastik Sep 15, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions ydb/core/external_sources/external_data_source.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,10 @@ struct TExternalDataSource : public IExternalSource {
ythrow TExternalSourceException() << "Only external table supports parameters";
}

bool DataSourceMustHaveDataBaseName(const TProtoStringType& sourceType) const {
return IsIn({"Greenplum", "PostgreSQL", "MySQL", "MsSQLServer", "ClickHouse"}, sourceType);
}

virtual void ValidateExternalDataSource(const TString& externalDataSourceDescription) const override {
NKikimrSchemeOp::TExternalDataSourceDescription proto;
if (!proto.ParseFromString(externalDataSourceDescription)) {
Expand All @@ -49,6 +53,10 @@ struct TExternalDataSource : public IExternalSource {
ythrow TExternalSourceException() << "Unsupported property: " << key;
}

if (DataSourceMustHaveDataBaseName(proto.GetSourceType()) && !proto.GetProperties().GetProperties().contains("database_name")) {
ythrow TExternalSourceException() << proto.GetSourceType() << " source must provide database_name";
}

ValidateHostname(HostnamePatterns, proto.GetLocation());
}

Expand Down
5 changes: 3 additions & 2 deletions ydb/core/external_sources/external_source_factory.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -36,12 +36,13 @@ IExternalSourceFactory::TPtr CreateExternalSourceFactory(const std::vector<TStri
NActors::TActorSystem* actorSystem,
size_t pathsLimit,
std::shared_ptr<NYql::ISecuredServiceAccountCredentialsFactory> credentialsFactory,
bool enableInfer) {
bool enableInfer,
bool allowLocalFiles) {
std::vector<TRegExMatch> hostnamePatternsRegEx(hostnamePatterns.begin(), hostnamePatterns.end());
return MakeIntrusive<TExternalSourceFactory>(TMap<TString, IExternalSource::TPtr>{
{
ToString(NYql::EDatabaseType::ObjectStorage),
CreateObjectStorageExternalSource(hostnamePatternsRegEx, actorSystem, pathsLimit, std::move(credentialsFactory), enableInfer)
CreateObjectStorageExternalSource(hostnamePatternsRegEx, actorSystem, pathsLimit, std::move(credentialsFactory), enableInfer, allowLocalFiles)
},
{
ToString(NYql::EDatabaseType::ClickHouse),
Expand Down
3 changes: 2 additions & 1 deletion ydb/core/external_sources/external_source_factory.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ IExternalSourceFactory::TPtr CreateExternalSourceFactory(const std::vector<TStri
NActors::TActorSystem* actorSystem = nullptr,
size_t pathsLimit = 50000,
std::shared_ptr<NYql::ISecuredServiceAccountCredentialsFactory> credentialsFactory = nullptr,
bool enableInfer = false);
bool enableInfer = false,
bool allowLocalFiles = false);

}
2 changes: 1 addition & 1 deletion ydb/core/external_sources/hive_metastore/ut/common.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ TString Exec(const TString& cmd) {

TString GetExternalPort(const TString& service, const TString& port) {
auto dockerComposeBin = BinaryPath("library/recipes/docker_compose/bin/docker-compose");
auto composeFileYml = ArcadiaSourceRoot() + "/ydb/core/external_sources/hive_metastore/ut/docker-compose.yml";
auto composeFileYml = ArcadiaFromCurrentLocation(__SOURCE_FILE__, "docker-compose.yml");
auto result = StringSplitter(Exec(dockerComposeBin + " -f " + composeFileYml + " port " + service + " " + port)).Split(':').ToList<TString>();
return result ? Strip(result.back()) : TString{};
}
Expand Down
14 changes: 10 additions & 4 deletions ydb/core/external_sources/hive_metastore/ut/ya.make
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,19 @@ IF (AUTOCHECK)
)
ENDIF()

ENV(COMPOSE_HTTP_TIMEOUT=1200) # during parallel tests execution there could be huge disk io, which triggers timeouts in docker-compose
INCLUDE(${ARCADIA_ROOT}/library/recipes/docker_compose/recipe.inc)

IF (OPENSOURCE)
# Including of docker_compose/recipe.inc automatically converts these tests into LARGE,
# which makes it impossible to run them during precommit checks on Github CI.
# Next several lines forces these tests to be MEDIUM. To see discussion, visit YDBOPS-8928.
SIZE(MEDIUM)
IF (SANITIZER_TYPE)
# Too huge for precommit check with sanitizers
SIZE(LARGE)
ELSE()
# Including of docker_compose/recipe.inc automatically converts these tests into LARGE,
# which makes it impossible to run them during precommit checks on Github CI.
# Next several lines forces these tests to be MEDIUM. To see discussion, visit YDBOPS-8928.
SIZE(MEDIUM)
ENDIF()
SET(TEST_TAGS_VALUE)
SET(TEST_REQUIREMENTS_VALUE)

Expand Down
Loading