Skip to content

Commit

Permalink
Rename to linked page, split out meta page interface (#353)
Browse files Browse the repository at this point in the history
* rename to linkedpage, split out meta page interface

* rename to linked page
  • Loading branch information
friendlymatthew authored Jun 20, 2024
1 parent 9dcf226 commit a120349
Show file tree
Hide file tree
Showing 10 changed files with 61 additions and 57 deletions.
2 changes: 1 addition & 1 deletion examples/visualizer/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ func main() {
// this is a linked meta page
lmps = lmps[1:]

// metaPage, err := metapage.NewMultiBPTree(pf, int(i))
// metaPage, err := linkedpage.NewMultiBPTree(pf, int(i))
// if err != nil {
// panic(err)
// }
Expand Down
6 changes: 3 additions & 3 deletions pkg/appendable/appendable_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package appendable

import (
"github.com/kevmo314/appendable/pkg/buftest"
"github.com/kevmo314/appendable/pkg/metapage"
"github.com/kevmo314/appendable/pkg/linkedpage"
"github.com/kevmo314/appendable/pkg/pagefile"
"reflect"
"testing"
Expand All @@ -16,7 +16,7 @@ func TestMarshalMetadata(t *testing.T) {
t.Fatal(err)
}

tree, err := metapage.NewMultiBPTree(p, 0)
tree, err := linkedpage.NewMultiBPTree(p, 0)
if err != nil {
t.Fatal(err)
}
Expand Down Expand Up @@ -69,7 +69,7 @@ func TestMarshalMetadata(t *testing.T) {
t.Fatal(err)
}

tree, err := metapage.NewMultiBPTree(p, 0)
tree, err := linkedpage.NewMultiBPTree(p, 0)
if err != nil {
t.Fatal(err)
}
Expand Down
10 changes: 5 additions & 5 deletions pkg/appendable/index_file.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package appendable
import (
"errors"
"fmt"
"github.com/kevmo314/appendable/pkg/metapage"
"github.com/kevmo314/appendable/pkg/linkedpage"
"io"
"time"

Expand All @@ -21,7 +21,7 @@ type DataHandler interface {

// IndexFile is a representation of the entire index file.
type IndexFile struct {
tree *metapage.LinkedMetaPage
tree *linkedpage.LinkedPage
dataHandler DataHandler

pf *pagefile.PageFile
Expand All @@ -36,7 +36,7 @@ func NewIndexFile(f io.ReadWriteSeeker, dataHandler DataHandler, searchHeaders [
return nil, fmt.Errorf("failed to create page file: %w", err)
}

tree, err := metapage.NewMultiBPTree(pf, 0)
tree, err := linkedpage.NewMultiBPTree(pf, 0)
if err != nil {
return nil, fmt.Errorf("failed to create multi b+ tree: %w", err)
}
Expand Down Expand Up @@ -101,7 +101,7 @@ func (i *IndexFile) SetMetadata(metadata *FileMeta) error {
return i.tree.SetMetadata(buf)
}

func (i *IndexFile) Indexes() (*metapage.LinkedMetaPage, error) {
func (i *IndexFile) Indexes() (*linkedpage.LinkedPage, error) {
return i.tree.Next()
}

Expand Down Expand Up @@ -146,7 +146,7 @@ func (i *IndexFile) IndexFieldNames() ([]string, error) {
return fieldNames, nil
}

func (i *IndexFile) FindOrCreateIndex(name string, fieldType FieldType) (*metapage.LinkedMetaPage, *IndexMeta, error) {
func (i *IndexFile) FindOrCreateIndex(name string, fieldType FieldType) (*linkedpage.LinkedPage, *IndexMeta, error) {
mp := i.tree
for {
next, err := mp.Next()
Expand Down
11 changes: 2 additions & 9 deletions pkg/bptree/bptree.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,16 @@ package bptree
import (
"bytes"
"fmt"
"github.com/kevmo314/appendable/pkg/metapage"
"io"
"slices"

"github.com/kevmo314/appendable/pkg/pagefile"
"github.com/kevmo314/appendable/pkg/pointer"
)

// MetaPage is an abstract interface over the root page of a bptree
// This allows the caller to control the memory location of the meta
// pointer
type MetaPage interface {
Root() (pointer.MemoryPointer, error)
SetRoot(pointer.MemoryPointer) error
}

type BPTree struct {
MetaPage MetaPage
MetaPage metapage.MetaPage
PageFile pagefile.ReadWriteSeekPager

Data []byte
Expand Down
6 changes: 3 additions & 3 deletions pkg/handlers/equality_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import (
"bytes"
"encoding/binary"
"fmt"
"github.com/kevmo314/appendable/pkg/metapage"
"github.com/kevmo314/appendable/pkg/linkedpage"
"github.com/kevmo314/appendable/pkg/pointer"
"log/slog"
"math"
Expand Down Expand Up @@ -133,7 +133,7 @@ func compareFieldNames(i1, i2 []string) (bool, string) {
return true, ""
}

func compareIndexMeta(i1, i2 []*metapage.LinkedMetaPage) (bool, string) {
func compareIndexMeta(i1, i2 []*linkedpage.LinkedPage) (bool, string) {

for i, collected1 := range i1 {
buf1, err := collected1.Metadata()
Expand Down Expand Up @@ -180,7 +180,7 @@ func compareIndexMeta(i1, i2 []*metapage.LinkedMetaPage) (bool, string) {
return true, ""
}

func compareMetaPages(i1, i2 []*metapage.LinkedMetaPage, jr, cr []byte) (bool, string) {
func compareMetaPages(i1, i2 []*linkedpage.LinkedPage, jr, cr []byte) (bool, string) {
h1 := [2]string{"test1", "test3"}
h2 := [2]float64{37.3, 4}

Expand Down
12 changes: 6 additions & 6 deletions pkg/handlers/jsonl_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import (
"math"
"testing"

"github.com/kevmo314/appendable/pkg/metapage"
"github.com/kevmo314/appendable/pkg/linkedpage"
"github.com/kevmo314/appendable/pkg/ngram"
"github.com/kevmo314/appendable/pkg/pointer"

Expand Down Expand Up @@ -144,7 +144,7 @@ func TestJSONL(t *testing.T) {
t.Errorf("got len(i.Indexes) = %d, want 4", len(collected))
}

var strIndexes []*metapage.LinkedMetaPage
var strIndexes []*linkedpage.LinkedPage

for _, ms := range collected {
buf, err := ms.Metadata()
Expand Down Expand Up @@ -490,7 +490,7 @@ func TestJSONL(t *testing.T) {
t.Errorf("got len(i.Indexes) = %d, want 5", len(collected))
}

var vanillaIndexes []*metapage.LinkedMetaPage
var vanillaIndexes []*linkedpage.LinkedPage

for _, ms := range collected {
buf, err := ms.Metadata()
Expand Down Expand Up @@ -567,7 +567,7 @@ func TestJSONL(t *testing.T) {
t.Errorf("got len(i.Indexes) = %d, want 2", len(collected))
}

var vanillaIndexes []*metapage.LinkedMetaPage
var vanillaIndexes []*linkedpage.LinkedPage

for _, ms := range collected {
buf, err := ms.Metadata()
Expand Down Expand Up @@ -765,7 +765,7 @@ func TestJSONL(t *testing.T) {
t.Fatalf("expected 4 pages, got: %v", len(collected))
}

var tripage []*metapage.LinkedMetaPage
var tripage []*linkedpage.LinkedPage

for _, ms := range collected {
buf, err := ms.Metadata()
Expand Down Expand Up @@ -833,7 +833,7 @@ func TestJSONL(t *testing.T) {
t.Fatalf("expected 4 pages, got: %v", len(collected))
}

var tripages []*metapage.LinkedMetaPage
var tripages []*linkedpage.LinkedPage

for _, ms := range collected {
buf, err := ms.Metadata()
Expand Down
Loading

0 comments on commit a120349

Please sign in to comment.