Comparing version
@@ -253,3 +253,3 @@ const SystemView = require('./system') | ||
for (const k of this.system.pendingIndexers) { | ||
if (b4a.equals(k, key)) return !b4a.equals(this.base.key, key) && this.base.local.length === 0 | ||
if (b4a.equals(k, key)) return !b4a.equals(this.base.bootstrap, key) && this.base.local.length === 0 | ||
} | ||
@@ -276,7 +276,7 @@ return false | ||
async _open () { | ||
const boot = (await this.base._getBootRecord()) | ||
const boot = await this.base._getBootRecord() | ||
const sysCore = this.store.get({ name: '_system' }) | ||
await sysCore.ready() | ||
await sysCore.setUserData('referrer', this.base.key) | ||
await sysCore.setUserData('referrer', this.base.bootstrap) | ||
await sysCore.setUserData('autobase/view', b4a.from('_system')) | ||
@@ -286,8 +286,8 @@ | ||
const system = new SystemView(sysCore) | ||
await system.ready() | ||
// reset so we dont track the _system | ||
this.store.opened = [] | ||
const system = new SystemView(sysCore) | ||
await system.ready() | ||
const view = this.base._hasOpen ? this.base._handlers.open(this.store, this.base) : null | ||
@@ -315,3 +315,3 @@ | ||
await v.core.setUserData('referrer', this.base.key) | ||
await v.core.setUserData('referrer', this.base.bootstrap) | ||
await v.core.setUserData('autobase/view', b4a.from(v.name)) | ||
@@ -473,3 +473,5 @@ | ||
const promises = [] | ||
for (const v of this.views) promises.push(v.ref.release()) | ||
for (const v of this.views) { | ||
if (v.ref) promises.push(v.ref.release()) | ||
} | ||
promises.push(this.systemRef.release()) | ||
@@ -571,3 +573,3 @@ | ||
if (core.length === views[i].length) continue | ||
if (!core || core.length === views[i].length) continue | ||
await core.truncate(views[i].length) | ||
@@ -765,3 +767,2 @@ } | ||
batch, | ||
views: [], | ||
indexers: false, | ||
@@ -768,0 +769,0 @@ systemLength: -1 |
@@ -154,3 +154,2 @@ const b4a = require('b4a') | ||
this.local = this.base.local.session({ | ||
// Hypercore bug here, doesnt flush | ||
atom: this.atom, | ||
@@ -307,3 +306,4 @@ valueEncoding: messages.OplogMessage, | ||
const target = manifest.signers[0].namespace | ||
const target = manifest.signers.length ? manifest.signers[0].namespace : null | ||
if (!target) return null | ||
@@ -310,0 +310,0 @@ for (const v of this.byName.values()) { |
@@ -121,3 +121,2 @@ const Hyperbee = require('hyperbee') | ||
batch: updateBatch, | ||
views: [], | ||
indexers: prevInfo === null || !sameIndexers(info, prevInfo), | ||
@@ -124,0 +123,0 @@ systemLength: data.seq + 1 |
@@ -169,3 +169,3 @@ const b4a = require('b4a') | ||
if (referrer === null || !b4a.equals(referrer, this.base.key)) return false | ||
if (referrer === null || !b4a.equals(referrer, this.base.bootstrap)) return false | ||
@@ -172,0 +172,0 @@ core.preupdate = this._preupdateBound |
@@ -95,3 +95,3 @@ const Linearizer = require('./linearizer') | ||
await this.core.ready() | ||
await this.core.setUserData('referrer', this.base.key) | ||
await this.core.setUserData('referrer', this.base.bootstrap) | ||
@@ -98,0 +98,0 @@ // remove later |
{ | ||
"name": "autobase", | ||
"version": "7.0.6", | ||
"version": "7.0.7", | ||
"description": "", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
168716
0.02%