Add plumbing for bolt upgrades

This commit is contained in:
Barak Michener 2015-06-23 15:19:13 -04:00
parent ba5b1dbfc3
commit 7aed9db4af
4 changed files with 148 additions and 26 deletions

View file

@ -197,7 +197,11 @@ func NewQuadStoreForRequest(qs QuadStore, opts Options) (QuadStore, error) {
func UpgradeQuadStore(name, dbpath string, opts Options) error {
r, registered := storeRegistry[name]
if registered {
return r.UpgradeFunc(dbpath, opts)
if r.UpgradeFunc != nil {
return r.UpgradeFunc(dbpath, opts)
} else {
return nil
}
}
return errors.New("quadstore: name '" + name + "' is not registered")