Showing 166 of 166 total issues
Method indexedIterator.Last
has 6 return statements (exceeds 4 allowed). Open
Open
func (i *indexedIterator) Last() bool {
if i.err != nil {
return false
} else if i.Released() {
i.err = ErrIterReleased
Method singleReader.Read
has 6 return statements (exceeds 4 allowed). Open
Open
func (x *singleReader) Read(p []byte) (int, error) {
r := x.r
if r.seq != x.seq {
return 0, errors.New("leveldb/journal: stale reader")
}
Method Reader.readRawBlock
has 6 return statements (exceeds 4 allowed). Open
Open
func (r *Reader) readRawBlock(bh blockHandle, verifyChecksum bool) ([]byte, error) {
data := r.bpool.Get(int(bh.length + blockTrailerLen))
if _, err := r.reader.ReadAt(data, int64(bh.offset)); err != nil && err != io.EOF {
return nil, err
}
Method DB.flush
has 6 return statements (exceeds 4 allowed). Open
Open
func (db *DB) flush(n int) (mdb *memDB, mdbFree int, err error) {
delayed := false
slowdownTrigger := db.s.o.GetWriteL0SlowdownTrigger()
pauseTrigger := db.s.o.GetWriteL0PauseTrigger()
// 请问您知道这里为什么要用匿名函数吗,我理解的是直接用循环就可以
Method DB.OpenTransaction
has 6 return statements (exceeds 4 allowed). Open
Open
func (db *DB) OpenTransaction() (*Transaction, error) {
if err := db.ok(); err != nil {
return nil, err
}
Method tableCompactionBuilder.run
has 6 return statements (exceeds 4 allowed). Open
Open
func (b *tableCompactionBuilder) run(cnt *compactionTransactCounter) (err error) {
snapResumed := b.snapIter > 0
hasLastUkey := b.snapHasLastUkey // The key might has zero length, so this is necessary.
lastUkey := append([]byte{}, b.snapLastUkey...)
lastSeq := b.snapLastSeq
Method singleReader.ReadByte
has 6 return statements (exceeds 4 allowed). Open
Open
func (x *singleReader) ReadByte() (byte, error) {
r := x.r
if r.seq != x.seq {
return 0, errors.New("leveldb/journal: stale reader")
}
Method Transaction.Commit
has 6 return statements (exceeds 4 allowed). Open
Open
func (tr *Transaction) Commit() error {
if err := tr.db.ok(); err != nil {
return err
}
Method indexedIterator.Next
has 6 return statements (exceeds 4 allowed). Open
Open
func (i *indexedIterator) Next() bool {
if i.err != nil {
return false
} else if i.Released() {
i.err = ErrIterReleased
Method indexedIterator.Seek
has 6 return statements (exceeds 4 allowed). Open
Open
func (i *indexedIterator) Seek(key []byte) bool {
if i.err != nil {
return false
} else if i.Released() {
i.err = ErrIterReleased
Method Reader.readFilterBlockCached
has 6 return statements (exceeds 4 allowed). Open
Open
func (r *Reader) readFilterBlockCached(bh blockHandle, fillCache bool) (*filterBlock, util.Releaser, error) {
if r.cache != nil {
var (
err error
ch *cache.Handle
Method session.newManifest
has 6 return statements (exceeds 4 allowed). Open
Open
func (s *session) newManifest(rec *sessionRecord, v *version) (err error) {
fd := storage.FileDesc{Type: storage.TypeManifest, Num: s.allocFileNum()}
writer, err := s.stor.Create(fd)
if err != nil {
return
Method DB.recoverJournalRO
has 6 return statements (exceeds 4 allowed). Open
Open
func (db *DB) recoverJournalRO() error {
// Get all journals and sort it by file number.
rawFds, err := db.s.stor.List(storage.TypeJournal)
if err != nil {
return err
Method DB.SetReadOnly
has 6 return statements (exceeds 4 allowed). Open
Open
func (db *DB) SetReadOnly() error {
if err := db.ok(); err != nil {
return err
}
Method session.flushManifest
has 6 return statements (exceeds 4 allowed). Open
Open
func (s *session) flushManifest(rec *sessionRecord) (err error) {
if !s.o.GetNoSync() {
err = s.manifestWriter.Sync()
if err != nil {
return
Function decodeBatchToMem
has 6 return statements (exceeds 4 allowed). Open
Open
func decodeBatchToMem(data []byte, expectSeq uint64, mdb *memdb.DB) (seq uint64, batchLen int, err error) {
seq, batchLen, err = decodeBatchHeader(data)
if err != nil {
return 0, 0, err
}
Method DB.get
has 5 arguments (exceeds 4 allowed). Consider refactoring. Open
Open
func (db *DB) get(auxm *memdb.DB, auxt tFiles, key []byte, seq uint64, ro *opt.ReadOptions) (value []byte, err error) {
Method DB.newIterator
has 5 arguments (exceeds 4 allowed). Consider refactoring. Open
Open
func (db *DB) newIterator(auxm *memDB, auxt tFiles, seq uint64, slice *util.Range, ro *opt.ReadOptions) *dbIter {
Method mBucket.get
has 5 arguments (exceeds 4 allowed). Consider refactoring. Open
Open
func (b *mBucket) get(r *Cache, h *mNode, hash uint32, ns, key uint64, noset bool) (done, added bool, n *Node) {
Function KeyValueTesting
has 5 arguments (exceeds 4 allowed). Consider refactoring. Open
Open
func KeyValueTesting(rnd *rand.Rand, kv KeyValue, p DB, setup func(KeyValue) DB, teardown func(DB)) {