MCPcopy
hub / github.com/pingcap/tidb / checkPrefixKey

Method checkPrefixKey

pkg/executor/foreign_key.go:393–406  ·  view source on GitHub ↗
(ctx context.Context, memBuffer kv.MemBuffer, snap kv.Snapshot, key kv.Key)

Source from the content-addressed store, hash-verified

391}
392
393func (fkc *FKCheckExec) checkPrefixKey(ctx context.Context, memBuffer kv.MemBuffer, snap kv.Snapshot, key kv.Key) error {
394 key, value, err := fkc.getIndexKeyValueInTable(ctx, memBuffer, snap, key)
395 if err != nil {
396 return err
397 }
398 if fkc.CheckExist {
399 return fkc.checkPrefixKeyExist(key, value)
400 }
401 if len(value) > 0 {
402 // If check not exist, but the key is exist, return failedErr.
403 return fkc.FailedErr
404 }
405 return nil
406}
407
408func (fkc *FKCheckExec) checkPrefixKeyExist(key kv.Key, value []byte) error {
409 exist := len(value) > 0

Callers 2

checkIndexKeysMethod · 0.95
checkRowsMethod · 0.95

Calls 2

checkPrefixKeyExistMethod · 0.95

Tested by

no test coverage detected