Skip to content
This repository was archived by the owner on Jan 28, 2021. It is now read-only.

Commit 2f288e1

Browse files
kuba--ajnavarro
kuba--
authored andcommitted
Make holder global per driver
Signed-off-by: kuba-- <[email protected]> (cherry picked from commit df23663)
1 parent 49c4028 commit 2f288e1

File tree

1 file changed

+3
-31
lines changed

1 file changed

+3
-31
lines changed

Diff for: sql/index/pilosa/driver.go

+3-31
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,11 @@ type (
7777
// NewDriver returns a new instance of pilosa.Driver
7878
// which satisfies sql.IndexDriver interface
7979
func NewDriver(root string) *Driver {
80+
h := pilosa.NewHolder()
81+
h.Path = filepath.Join(root, "."+DriverID)
8082
return &Driver{
8183
root: root,
82-
holder: pilosa.NewHolder(),
84+
holder: h,
8385
}
8486
}
8587

@@ -114,7 +116,6 @@ func (d *Driver) Create(
114116
return nil, err
115117
}
116118

117-
d.holder.Path = d.pilosaDirPath(db, table)
118119
idx, err := d.holder.CreateIndexIfNotExists(
119120
indexName(db, table),
120121
pilosa.IndexOptions{},
@@ -144,20 +145,6 @@ func (d *Driver) LoadAll(db, table string) ([]sql.Index, error) {
144145
root = filepath.Join(d.root, db, table)
145146
)
146147

147-
d.holder.Path = d.pilosaDirPath(db, table)
148-
if _, err := os.Stat(d.holder.Path); err != nil {
149-
if os.IsNotExist(err) {
150-
return indexes, nil
151-
}
152-
return nil, err
153-
}
154-
155-
err := d.holder.Open()
156-
if err != nil {
157-
return nil, err
158-
}
159-
defer d.holder.Close()
160-
161148
dirs, err := ioutil.ReadDir(root)
162149
if err != nil {
163150
if os.IsNotExist(err) {
@@ -359,11 +346,6 @@ func (d *Driver) Save(
359346
}
360347

361348
pilosaIndex := idx.index
362-
if err = pilosaIndex.Open(); err != nil {
363-
return err
364-
}
365-
defer pilosaIndex.Close()
366-
367349
var rows uint64
368350
for {
369351
p, kviter, err := iter.Next()
@@ -408,12 +390,6 @@ func (d *Driver) Delete(i sql.Index, partitions sql.PartitionIter) error {
408390
return err
409391
}
410392

411-
err := idx.index.Open()
412-
if err != nil {
413-
return err
414-
}
415-
defer idx.index.Close()
416-
417393
for {
418394
p, err := partitions.Next()
419395
if err != nil {
@@ -547,10 +523,6 @@ func mkdir(elem ...string) (string, error) {
547523
return path, os.MkdirAll(path, 0750)
548524
}
549525

550-
func (d *Driver) pilosaDirPath(db, table string) string {
551-
return filepath.Join(d.root, db, table, "."+DriverID)
552-
}
553-
554526
func (d *Driver) configFilePath(db, table, id string) string {
555527
return filepath.Join(d.root, db, table, id, ConfigFileName)
556528
}

0 commit comments

Comments
 (0)