code: func (p *DB) Reset() {
  	p.mu.Lock()
  	p.rnd = rand.New(rand.NewSource(0xdeadbeef))
  	p.maxHeight = 1
  	p.n = 0
  	p.kvSize = 0
  	p.kvData = p.kvData[:0]
  	p.nodeData = p.nodeData[:nNext+tMaxHeight]
  	p.nodeData[nKV] = 0
  	p.nodeData[nKey] = 0
  	p.nodeData[nVal] = 0
  	p.nodeData[nHeight] = tMaxHeight
  	for n := 0; n < tMaxHeight; n++ {
  		p.nodeData[nNext+n] = 0
  		p.prevNode[n] = 0
  	}
  	p.mu.Unlock()
  }
docs: // Reset resets the DB to initial empty state. Allows reuse the buffer.