holochain / holochain-rust

DEPRECATED. The Holochain framework implemented in rust with a redux style internal state-model.
GNU General Public License v3.0
1.12k stars 268 forks source link

fix for failed publish of authored entries #2206

Closed zippy closed 4 years ago

zippy commented 4 years ago

PR summary

Fixes bug caused by the failure of the conductor to ever hold authored entries in the case that the initial publishing failed.

There is already a mechanism in place where the conductor correctly holds authored items in it's own DHT when it is in "autonomous mode" i.e. when it knows that it's disconnected from sim2h. However, there are cases when the node doesn't know that it's disconnected, i.e. the low level socket connection is still open and hasn't been closed properly (or sim2h is just busy) . If the conductor is shut down then, or if other actions are taken this can yield mismatches between the holding list and what's in the CAS.

The fix is to always treat Publishing as if we are in autonomous mode. This will yield an extra unnecessary HoldEntryEntryAspect message from sim2h, but that will just be ignored.

testing/benchmarking notes

( if any manual testing or benchmarking was/should be done, add notes and/or screenshots here )

followups

( any new tickets/concerns that were discovered or created during this work but aren't in scope for review here )

changelog

- summary of change [PR#1234](https://github.com/holochain/holochain-rust/pull/1234)

documentation