Skip to content

Commit a41ec3e

Browse files
tesseractblinkov
tesseract
authored andcommitted
Added settings of create transfer statement: flush_interval, batch_size, consumer_name
<#15770> commit_hash:f9e7a01a29938b4bec4aacdaa4e116101326f7da
1 parent 9fdeb70 commit a41ec3e

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

Diff for: yql/essentials/sql/v1/sql_query.cpp

+12-1
Original file line numberDiff line numberDiff line change
@@ -163,15 +163,21 @@ static bool TransferSettingsEntry(std::map<TString, TNodePtr>& out,
163163
"user",
164164
"password",
165165
"password_secret_name",
166+
"flush_interval",
167+
"batch_size_bytes",
166168
};
167169

168170
TSet<TString> stateSettings = {
169171
"state",
170172
"failover_mode",
171173
};
172174

175+
TSet<TString> crateOnlySettings = {
176+
"consumer",
177+
};
178+
173179
const auto keyName = to_lower(key.Name);
174-
if (!configSettings.count(keyName) && !stateSettings.contains(keyName)) {
180+
if (!configSettings.count(keyName) && !stateSettings.contains(keyName) && !crateOnlySettings.contains(keyName)) {
175181
ctx.Context().Error() << "Unknown transfer setting: " << key.Name;
176182
return false;
177183
}
@@ -181,6 +187,11 @@ static bool TransferSettingsEntry(std::map<TString, TNodePtr>& out,
181187
return false;
182188
}
183189

190+
if (!create && crateOnlySettings.contains(keyName)) {
191+
ctx.Context().Error() << key.Name << " is not supported in ALTER";
192+
return false;
193+
}
194+
184195
if (!out.emplace(keyName, value).second) {
185196
ctx.Context().Error() << "Duplicate transfer setting: " << key.Name;
186197
}

0 commit comments

Comments
 (0)