mirror of https://github.com/etcd-io/bbolt.git
Merge pull request #189 from benbjohnson/increase-max-nodes-per-page
Increase max nodes per page.pull/34/head
commit
5e9ce18567
9
page.go
9
page.go
|
@ -10,7 +10,6 @@ const pageHeaderSize = int(unsafe.Offsetof(((*page)(nil)).ptr))
|
||||||
|
|
||||||
const maxAllocSize = 0xFFFFFFF
|
const maxAllocSize = 0xFFFFFFF
|
||||||
const minKeysPerPage = 2
|
const minKeysPerPage = 2
|
||||||
const maxNodesPerPage = 65535
|
|
||||||
|
|
||||||
const branchPageElementSize = int(unsafe.Sizeof(branchPageElement{}))
|
const branchPageElementSize = int(unsafe.Sizeof(branchPageElement{}))
|
||||||
const leafPageElementSize = int(unsafe.Sizeof(leafPageElement{}))
|
const leafPageElementSize = int(unsafe.Sizeof(leafPageElement{}))
|
||||||
|
@ -57,23 +56,23 @@ func (p *page) meta() *meta {
|
||||||
|
|
||||||
// leafPageElement retrieves the leaf node by index
|
// leafPageElement retrieves the leaf node by index
|
||||||
func (p *page) leafPageElement(index uint16) *leafPageElement {
|
func (p *page) leafPageElement(index uint16) *leafPageElement {
|
||||||
n := &((*[maxNodesPerPage]leafPageElement)(unsafe.Pointer(&p.ptr)))[index]
|
n := &((*[0xFFFFFFF]leafPageElement)(unsafe.Pointer(&p.ptr)))[index]
|
||||||
return n
|
return n
|
||||||
}
|
}
|
||||||
|
|
||||||
// leafPageElements retrieves a list of leaf nodes.
|
// leafPageElements retrieves a list of leaf nodes.
|
||||||
func (p *page) leafPageElements() []leafPageElement {
|
func (p *page) leafPageElements() []leafPageElement {
|
||||||
return ((*[maxNodesPerPage]leafPageElement)(unsafe.Pointer(&p.ptr)))[:]
|
return ((*[0xFFFFFFF]leafPageElement)(unsafe.Pointer(&p.ptr)))[:]
|
||||||
}
|
}
|
||||||
|
|
||||||
// branchPageElement retrieves the branch node by index
|
// branchPageElement retrieves the branch node by index
|
||||||
func (p *page) branchPageElement(index uint16) *branchPageElement {
|
func (p *page) branchPageElement(index uint16) *branchPageElement {
|
||||||
return &((*[maxNodesPerPage]branchPageElement)(unsafe.Pointer(&p.ptr)))[index]
|
return &((*[0xFFFFFFF]branchPageElement)(unsafe.Pointer(&p.ptr)))[index]
|
||||||
}
|
}
|
||||||
|
|
||||||
// branchPageElements retrieves a list of branch nodes.
|
// branchPageElements retrieves a list of branch nodes.
|
||||||
func (p *page) branchPageElements() []branchPageElement {
|
func (p *page) branchPageElements() []branchPageElement {
|
||||||
return ((*[maxNodesPerPage]branchPageElement)(unsafe.Pointer(&p.ptr)))[:]
|
return ((*[0xFFFFFFF]branchPageElement)(unsafe.Pointer(&p.ptr)))[:]
|
||||||
}
|
}
|
||||||
|
|
||||||
// dump writes n bytes of the page to STDERR as hex output.
|
// dump writes n bytes of the page to STDERR as hex output.
|
||||||
|
|
Loading…
Reference in New Issue