hypercore 11.27.15 → 11.27.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/lib/core.js +6 -2
  2. package/package.json +1 -1
package/lib/core.js CHANGED
@@ -682,7 +682,9 @@ module.exports = class Core {
682
682
  }
683
683
 
684
684
  // Attempt to repair local merkle tree with remote roots
685
- const tx = this.storage.write()
685
+ const atom = this.storage.createAtom()
686
+ const atomized = this.storage.atomize(atom)
687
+ const tx = atomized.write()
686
688
  for (const node of proof.upgrade.nodes) {
687
689
  tx.putTreeNode(node)
688
690
  }
@@ -690,7 +692,7 @@ module.exports = class Core {
690
692
 
691
693
  // Try local proof again
692
694
  try {
693
- const rx = this.state.storage.read()
695
+ const rx = atomized.read()
694
696
  const treeProofPromise = MerkleTree.proof(this.state, rx, {
695
697
  block: null,
696
698
  hash: null,
@@ -715,6 +717,8 @@ module.exports = class Core {
715
717
  return false
716
718
  }
717
719
 
720
+ await atom.flush()
721
+
718
722
  for (let i = this.monitors.length - 1; i >= 0; i--) {
719
723
  this.monitors[i].emit('repaired', proof)
720
724
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hypercore",
3
- "version": "11.27.15",
3
+ "version": "11.27.16",
4
4
  "description": "Hypercore is a secure, distributed append-only log",
5
5
  "main": "index.js",
6
6
  "scripts": {