code: func (b *Bucket) pageNode(id pgid) (*page, *node) {
  	// Inline buckets have a fake page embedded in their value so treat them
  	// differently. We'll return the rootNode (if available) or the fake page.
  	if b.root == 0 {
  		if id != 0 {
  			panic(fmt.Sprintf("inline bucket non-zero page access(2): %d != 0", id))
  		}
  		if b.rootNode != nil {
  			return nil, b.rootNode
  		}
  		return b.page, nil
  	}
  
  	// Check the node cache for non-inline buckets.
  	if b.nodes != nil {
  		if n := b.nodes[id]; n != nil {
  			return nil, n
  		}
  	}
  
  	// Finally lookup the page from the transaction if no node is materialized.
  	return b.tx.page(id), nil
  }
docs: // pageNode returns the in-memory node, if it exists.
  // Otherwise returns the underlying page.