| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
When an sync messages arrives and automerge has nothing to say about it,
then no reply is generated. With c9279e4 it was assumed that every sync
message gets an answer, so missing replies caused unnecessary resends.
Now a reply is only awaited if the peer's last reported heads differ
from ours. If the peer's heads become equal through a third peer without
replying, the waiting will also abort if a ping or pong showss the same
heads digest on both sides.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
POST /admin/remakes accepts specs with replace kind, e.g.:
{ "kind": "replace",
"baseHeads": ["..."],
"spec": {
"document": { "accounts": { ... } },
"rules": [
{ "from": "users", "to": "accounts" },
{ "from": "users/admin", "drop": true },
{ "from": "", "to": "" }
] } }
|
| |
|
|
|
|
|
|
|
| |
POST /admin/remakes accepts "baseHeads": ["<hex>", ...], for example the
heads of an earlier GET /store?heads=true.
Every head must be in the coordinating node's document, otherwise the
request gets a 400. Without it, the base is the current heads. This
works for any kind.
|
| |
|
|
|
|
|
|
|
|
| |
GET /store?heads=true and GET /store/{key}?heads=true add the header
x-continuum-heads (sorted, comma-separated hex). The heads come from
the same moment as the read.
- It's opt-in because reading the heads takes the write lock.
Reads without the flag don't change.
- Stale reads during a rejoin never carry heads.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
This prevents an immediate ping during handshake.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
- introduce DELETE /admin/compaction to abort local compaction proposal
- continue coordination if a POST /admin/compaction?wait=true terminates
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|