summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornsofya <[email protected]>2023-06-05 15:35:49 +0300
committernsofya <[email protected]>2023-06-05 15:35:49 +0300
commit673cd6cf5505d2db27f94c86525520eabcd8ffac (patch)
treed27b529e2ebed0beed2ae25271a11b52fa673cf2
parent682f9f94f49c0edfd94cdf1aac97372918a2b894 (diff)
Use correct statuses for schema errors
Use correct statuses for schema errors
-rw-r--r--ydb/core/tx/schemeshard/schemeshard_olap_types.cpp30
1 files changed, 15 insertions, 15 deletions
diff --git a/ydb/core/tx/schemeshard/schemeshard_olap_types.cpp b/ydb/core/tx/schemeshard/schemeshard_olap_types.cpp
index bb007c568c0..4135540e3cc 100644
--- a/ydb/core/tx/schemeshard/schemeshard_olap_types.cpp
+++ b/ydb/core/tx/schemeshard/schemeshard_olap_types.cpp
@@ -140,7 +140,7 @@ namespace NKikimr::NSchemeShard {
TMap<TString, ui32> keyColumnNames;
for (auto&& pkKey : tableSchema.GetKeyColumnNames()) {
if (!keyColumnNames.emplace(pkKey, keyColumnNames.size()).second) {
- errors.AddError(Sprintf("Duplicate key column '%s'", pkKey.c_str()));
+ errors.AddError(NKikimrScheme::StatusSchemeError, TStringBuilder() << "Duplicate key column '" << pkKey << "'");
return false;
}
}
@@ -161,19 +161,19 @@ namespace NKikimr::NSchemeShard {
}
if (column.GetKeyOrder() && *column.GetKeyOrder() == 0) {
if (!TOlapSchema::IsAllowedFirstPkType(column.GetType().GetTypeId())) {
- errors.AddError(TStringBuilder()
+ errors.AddError(NKikimrScheme::StatusSchemeError, TStringBuilder()
<< "Type '" << column.GetType().GetTypeId() << "' specified for column '" << column.GetName()
<< "' is not supported in first PK position");
return false;
}
}
if (columnNames.contains(column.GetName())) {
- errors.AddError(Sprintf("Duplicate column '%s'", column.GetName().c_str()));
+ errors.AddError(NKikimrScheme::StatusMultipleModifications, TStringBuilder() << "Duplicate column '" << column.GetName() << "'");
return false;
}
if (!allowNullKeys) {
if (keyColumnNames.contains(column.GetName()) && !column.IsNotNull()) {
- errors.AddError(Sprintf("Nullable key column '%s'", column.GetName().c_str()));
+ errors.AddError(NKikimrScheme::StatusSchemeError, TStringBuilder() << "Nullable key column '" << column.GetName() << "'");
return false;
}
}
@@ -186,7 +186,7 @@ namespace NKikimr::NSchemeShard {
bool TOlapSchemaUpdate::Parse(const NKikimrSchemeOp::TAlterColumnTableSchema& alterRequest, IErrorCollector& errors) {
TSet<TString> addColumnNames;
if (alterRequest.DropColumnsSize()) {
- errors.AddError("Drop columns method not supported for tablestore and table");
+ errors.AddError(NKikimrScheme::StatusInvalidParameter, "Drop columns method not supported for tablestore and table");
return false;
}
@@ -196,7 +196,7 @@ namespace NKikimr::NSchemeShard {
return false;
}
if (addColumnNames.contains(column.GetName())) {
- errors.AddError(Sprintf("column '%s' duplication for add", column.GetName().c_str()));
+ errors.AddError(NKikimrScheme::StatusAlreadyExists, TStringBuilder() << "column '" << column.GetName() << "' duplication for add");
return false;
}
addColumnNames.emplace(column.GetName());
@@ -210,11 +210,11 @@ namespace NKikimr::NSchemeShard {
return false;
}
if (addColumnNames.contains(columnDiff.GetName())) {
- errors.AddError(Sprintf("column '%s' have to be either add or update", columnDiff.GetName().c_str()));
+ errors.AddError(NKikimrScheme::StatusMultipleModifications, TStringBuilder() << "column '" << columnDiff.GetName() << "' have to be either add or update");
return false;
}
if (alterColumnNames.contains(columnDiff.GetName())) {
- errors.AddError(Sprintf("column '%s' duplication for update", columnDiff.GetName().c_str()));
+ errors.AddError(NKikimrScheme::StatusMultipleModifications, TStringBuilder() << "column '" << columnDiff.GetName() << "' duplication for update");
return false;
}
alterColumnNames.emplace(columnDiff.GetName());
@@ -225,7 +225,7 @@ namespace NKikimr::NSchemeShard {
bool TOlapSchema::Update(const TOlapSchemaUpdate& schemaUpdate, IErrorCollector& errors) {
if (Columns.empty() && schemaUpdate.GetAddColumns().empty()) {
- errors.AddError("No add columns specified");
+ errors.AddError(NKikimrScheme::StatusSchemeError, "No add columns specified");
return false;
}
@@ -233,7 +233,7 @@ namespace NKikimr::NSchemeShard {
Engine = schemaUpdate.GetEngineDef(NKikimrSchemeOp::COLUMN_ENGINE_REPLACING_TIMESERIES);
} else {
if (schemaUpdate.HasEngine()) {
- errors.AddError("No engine updates supported");
+ errors.AddError(NKikimrScheme::StatusSchemeError, "No engine updates supported");
return false;
}
}
@@ -242,16 +242,16 @@ namespace NKikimr::NSchemeShard {
std::map<ui32, ui32> orderedKeyColumnIds;
for (auto&& column : schemaUpdate.GetAddColumns()) {
if (ColumnsByName.contains(column.GetName())) {
- errors.AddError(Sprintf("column '%s' already exists", column.GetName().data()));
+ errors.AddError(NKikimrScheme::StatusAlreadyExists, TStringBuilder() << "column '" << column.GetName() << "' already exists");
return false;
}
if (hasColumnsBefore) {
if (column.IsNotNull()) {
- errors.AddError("Cannot add new not null column currently (not supported yet)");
+ errors.AddError(NKikimrScheme::StatusSchemeError, "Cannot add new not null column currently (not supported yet)");
return false;
}
if (column.GetKeyOrder()) {
- errors.AddError(Sprintf("column '%s' is pk column. its impossible to modify pk", column.GetName().data()));
+ errors.AddError(NKikimrScheme::StatusSchemeError, TStringBuilder() << "column '" << column.GetName() << "' is pk column. its impossible to modify pk");
return false;
}
}
@@ -267,7 +267,7 @@ namespace NKikimr::NSchemeShard {
for (auto&& columnDiff : schemaUpdate.GetAlterColumns()) {
auto it = ColumnsByName.find(columnDiff.GetName());
if (it == ColumnsByName.end()) {
- errors.AddError(Sprintf("column '%s' not exists for altering", columnDiff.GetName().data()));
+ errors.AddError(NKikimrScheme::StatusSchemeError, TStringBuilder() << "column '" << columnDiff.GetName() << "' not exists for altering");
return false;
} else {
auto itColumn = Columns.find(it->second);
@@ -285,7 +285,7 @@ namespace NKikimr::NSchemeShard {
Y_VERIFY(i == it->first);
}
if (KeyColumnIds.empty()) {
- errors.AddError("No primary key specified");
+ errors.AddError(NKikimrScheme::StatusSchemeError, "No primary key specified");
return false;
}
}