| 406 | TableScanState& scanState) const; |
| 407 | |
| 408 | offset_t NodeTable::validateUniquenessConstraint(const Transaction* transaction, |
| 409 | const std::vector<ValueVector*>& propertyVectors) const { |
| 410 | const auto pkVector = propertyVectors[pkColumnID]; |
| 411 | DASSERT(pkVector->state->getSelVector().getSelSize() == 1); |
| 412 | const auto pkVectorPos = pkVector->state->getSelVector()[0]; |
| 413 | if (offset_t offset = INVALID_OFFSET; |
| 414 | lookupPK(transaction, propertyVectors[pkColumnID], pkVectorPos, offset)) { |
| 415 | return offset; |
| 416 | } |
| 417 | if (const auto localTable = transaction->getLocalStorage()->getLocalTable(tableID)) { |
| 418 | return localTable->cast<LocalNodeTable>().validateUniquenessConstraint(transaction, |
| 419 | *pkVector); |
| 420 | } |
| 421 | return INVALID_OFFSET; |
| 422 | } |
| 423 | |
| 424 | void NodeTable::validatePkNotExists(const Transaction* transaction, ValueVector* pkVector) const { |
| 425 | offset_t dummyOffset = INVALID_OFFSET; |
no test coverage detected