From e64767a88686450bef4b4dbb3f54b1903984c3ca Mon Sep 17 00:00:00 2001 From: Todd Gruben Date: Fri, 25 Feb 2022 15:06:02 -0600 Subject: [PATCH] merge with master --- executor.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/executor.go b/executor.go index d9aba15c3..ad4fabcf8 100644 --- a/executor.go +++ b/executor.go @@ -8295,31 +8295,31 @@ func (e *executor) executeDeleteRecordFromShard(ctx context.Context, qcx *Qcx, i return DeleteRows(ctx, src, idx, shard) } -func DeleteRows(ctx context.Context, row *Row, idx *Index, shard uint64) (bool, error) { +func DeleteRows(ctx context.Context, src *Row, idx *Index, shard uint64) (bool, error) { var existenceFragment *fragment var deletedRowID uint64 var commitor Commitor = &NopCommitor{} var err error - columns := row.segments[0].data //should only be one segment + columns := src.segments[0].data //should only be one segment + if idx.Keys() { - columns := row.segments[0].data //store columns in exits field ToBeDelete row commited existenceFragment = idx.Holder().fragment(idx.Name(), existenceFieldName, viewStandard, shard) if existenceFragment == nil { //no exists field return false, errors.New("can't bulk delete without existence field") } - deletedRowID, err = transactExistRow(ctx, idx, shard, existenceFragment, row) + deletedRowID, err = transactExistRow(ctx, idx, shard, existenceFragment, src) commitor, err = deleteKeyTranslation(ctx, idx, shard, columns) if err != nil { return false, err } } writeTx := idx.Txf().NewTx(Txo{Write: writable, Index: idx, Shard: shard}) - defer writeTx.Rollback() if err != nil { return false, err } + defer writeTx.Rollback() changed := false defer func() { //if there is an error on the bit clearing rollback the keys