| | |
| | | } |
| | | |
| | | // 遍历数据, 输出原始数据 |
| | | func (ls *LogStore) ForEach(f func(v *LogCon) error) { |
| | | ls.store.ForEach(f) |
| | | func (ls *LogStore) ForEach(f func(v *LogCon) error) error { |
| | | return ls.store.ForEach(f) |
| | | } |
| | | |
| | | func (ls *LogStore) Size() int { |
| | |
| | | return tx.Commit() |
| | | } |
| | | |
| | | func (b *BoltStore) ForEach(f func(lc *LogCon) error) { |
| | | func (b *BoltStore) ForEach(f func(lc *LogCon) error) error { |
| | | tx, err := b.conn.Begin(true) |
| | | if err != nil { |
| | | return |
| | | return err |
| | | } |
| | | defer tx.Rollback() |
| | | |
| | |
| | | cLog := &confLog{} |
| | | err := b.GetConfLog(start, cLog) |
| | | if err != nil { |
| | | return |
| | | return err |
| | | } |
| | | |
| | | bucketName := cLog.BucketName |
| | | bucket := tx.Bucket([]byte(bucketName)) |
| | | if bucket == nil { |
| | | return |
| | | return err |
| | | } |
| | | |
| | | bucket.ForEach(func(k, v []byte) error { |
| | |
| | | return err |
| | | }) |
| | | } |
| | | |
| | | return nil |
| | | } |
| | | |
| | | func (b *BoltStore) Delete(lc *LogCon) error { |