Currently, SDK provides an interface that implies the ability to reattach a detached document, as evidenced by the presence of test code within JS SDK.
However, when a specific client detaches a document, there is possibilities that tombstones of that client may be garbage collected by another peers. If an operation is generated that refers to tombstones, it could lead to a cannot find node issue.
Description:
Currently, SDK provides an interface that implies the ability to reattach a detached document, as evidenced by the presence of test code within JS SDK.
However, when a specific client detaches a document, there is possibilities that tombstones of that client may be garbage collected by another peers. If an operation is generated that refers to tombstones, it could lead to a
cannot find node
issue.Possible Solutions:
Prevent reattaching detached documents
ErrAlreadyDetached
to the user.Allow reattaching of detached documents
For now, I think it’s better to proceed with Solution 1.
Why: