go-header icon indicating copy to clipboard operation
go-header copied to clipboard

store: `HeightSub` should be able to notify callers of *any* new height written to the Store

Open renaynay opened this issue 8 months ago • 1 comments

Currently, heightSub keeps track of height which essentially the highest height written to the Store. Since Store now allows non-adjacent Appends, that height field is rendered useless (at least in the case of heightSub) as it is not guaranteed that the highest header written to the store means that everything below is also written to the store.

Requested changes

  • remove height field from HeightSub as it is no longer valuable

  • store.GetByHeight should first do a .Has on the store to see if that height is already there, and then return the header if it exists in store -- and only if it does NOT yet exist, then subscribe to it via heightSub.

  • heightSub should be able to "see" the height of every successful Append that happens on the store -- store should instead "Publish" to heightSub and heightSub notifs all of the callers of that height that it is now available.

renaynay avatar Jun 24 '24 14:06 renaynay