You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
With splitstore v1 (see #6474) there is now a real distinction between the exposed blockstore abstraction and the underlying blockstore.
Network requests can pin references into the hotstore during compaction, which can result in keeping unwanted data hot even though they are unreachable from the chain.
In order to communicate the origin of network requests, we propose an ExposableBlockstore trait/optional interface which provides a view of the blockstore with network request awareness in relevant codepaths.
The trait looks like this:
type ExposableBlockstore interface {
Expose() Blockstore
}
The splitstore can implement the trait and provide a view that bypasses transactional protection for all reads.
The exposed blockstore abstraction is currently hooked through DI to chainxchg/bitswap, but we also need to hook it to the blockstore exposed through json-rpc.
The text was updated successfully, but these errors were encountered:
With splitstore v1 (see #6474) there is now a real distinction between the exposed blockstore abstraction and the underlying blockstore.
Network requests can pin references into the hotstore during compaction, which can result in keeping unwanted data hot even though they are unreachable from the chain.
In order to communicate the origin of network requests, we propose an
ExposableBlockstore
trait/optional interface which provides a view of the blockstore with network request awareness in relevant codepaths.The trait looks like this:
The splitstore can implement the trait and provide a view that bypasses transactional protection for all reads.
The exposed blockstore abstraction is currently hooked through DI to chainxchg/bitswap, but we also need to hook it to the blockstore exposed through json-rpc.
The text was updated successfully, but these errors were encountered: