MCPcopy Create free account
hub / github.com/nutsdb/nutsdb / ExpireList

Method ExpireList

tx_list.go:463–489  ·  view source on GitHub ↗
(bucket string, key []byte, ttl uint32)

Source from the content-addressed store, hash-verified

461}
462
463func (tx *Tx) ExpireList(bucket string, key []byte, ttl uint32) error {
464 if err := tx.checkTxIsClosed(); err != nil {
465 return err
466 }
467 b, err := tx.db.bucketMgr.GetBucket(DataStructureList, bucket)
468 if err != nil {
469 return err
470 }
471
472 var (
473 bucketId = b.Id
474 l *data.List
475 exist bool
476 )
477
478 if l, exist = tx.db.Index.List.exist(bucketId); !exist {
479 return ErrBucket
480 }
481
482 l.ExpireList(key, ttl)
483 ttls := strconv2.Int64ToStr(int64(ttl))
484 err = tx.push(bucket, key, DataExpireListFlag, []byte(ttls))
485 if err != nil {
486 return err
487 }
488 return nil
489}
490
491func (tx *Tx) CheckExpire(bucket string, key []byte) bool {
492 b, err := tx.db.bucketMgr.GetBucket(DataStructureList, bucket)

Callers 1

txExpireListFunction · 0.45

Calls 4

checkTxIsClosedMethod · 0.95
pushMethod · 0.95
GetBucketMethod · 0.80
existMethod · 0.80

Tested by 1

txExpireListFunction · 0.36