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
Repositories on the storage servers should expire after some time (say 24 hours). This is for two reasons:
The storage space is limited and this service is currently available to everyone free of charge so this way we ensure the available space lasts longer
To comply with various privacy regulations, right-to-be-forgotten, etc...
Proposal
We expire the repository when it's not being used (read from or written to) for the given time period ("expiration time"). When a repo is expired we only delete its data but we keep the db around so the repo can be easily restored if it becomes used again.
Implementation details
When a repo is expired we delete all the data (blocks and index) except the root nodes. We mark the root nodes as Expired but we keep the block presence intact. We process incoming RootNode messages normally. We also send outgoing RootNode messages normally. When we receive a ChildNode request for any of the expired root node, we respond with ChildNodesError but we also flip the expired node to Incomplete so we start to sync that branch again.
The text was updated successfully, but these errors were encountered:
Repositories on the storage servers should expire after some time (say 24 hours). This is for two reasons:
Proposal
We expire the repository when it's not being used (read from or written to) for the given time period ("expiration time"). When a repo is expired we only delete its data but we keep the db around so the repo can be easily restored if it becomes used again.
Implementation details
When a repo is expired we delete all the data (blocks and index) except the root nodes. We mark the root nodes as
Expired
but we keep the block presence intact. We process incomingRootNode
messages normally. We also send outgoingRootNode
messages normally. When we receive aChildNode
request for any of the expired root node, we respond withChildNodesError
but we also flip the expired node toIncomplete
so we start to sync that branch again.The text was updated successfully, but these errors were encountered: