INNER CODE UNIT · C++
pkField
epsilla-cloud/vectordb · engine/db/db_server.cpp:323
auto pkField = table->table_schema_.fields_[pkIdx];
size_t pkListSize = pkList.GetSize();
if (pkListSize == 0) {
logger_.Info("No pk to delete.");
return Status::OK();
}
switch (pkField.field_type_) {
case meta::FieldType::INT1: // fall through
case meta::FieldType::INT2: // fall through
case meta::FieldType::INT4: // fall through
case meta::FieldType::INT8:
for (int i = 0; i < pkListSize; i++) {
if (!pkList.GetArrayElement(i).IsNumber()) {
return Status(DB_UNEXPECTED_ERROR, "Primary key type mismatch at field position " + std::to_string(i));
}
}
break;
case meta::FieldType::STRING: