Feature #467
Feature #466: IPAACA v3
v3: Linked IU events / Batch updates on the IU [event] level
| Status: | New | Start date: | 2016-02-16 | |
|---|---|---|---|---|
| Priority: | Normal | Due date: | ||
| Assignee: | - | % Done: | 0% | |
| Category: | - | |||
| Target version: | - |
Description
Similarly to the batch payload updates introduced in v2, v3 ought to provide a means of coordinating several IU events in a single indivisible transaction.
A possible, and important, use case would be the publication of linked sets of IUs in a single shot.
This will most certainly involve support on the protocol level (note that #462 will entail a new protocol version, anyway).
History
#1
Updated by Hendrik Buschmeier almost 10 years ago
Linked IU events should consist of updates to payload, links or metadata as well as of new IUs being added. My initial proposal for a protobuf-WireSchema for such a 'transaction' is as follows:
message Transaction {
// Protocol specific fields
optional string protocol_version = 1 [default = "3.0"];
optional string auth_token = 2 [default = ""];
repeated IU new_ius = 3;
repeated IUUpdate updates = 4;
}
Two open questions:
- Is an ordering of the individual items in an transaction assumed? If yes, an additional layer of abstraction over TransactionItems might be necessary, e.g.:
message Transaction { // Protocol specific fields optional string protocol_version = 1 [default = "3.0"]; optional string auth_token = 2 [default = ""]; repeated TransactionItem items = 3; } message TransactionItem { optional IU iu = 1; optional IUUpdate update = 2 }
- What happens if one of the updates fails?
#2
Updated by Hendrik Buschmeier almost 10 years ago
I created a branch ipaaca3-dev (available here) that contains a first proposal for how the protobuf messages for ipaaca3 could look like (see 39a14c1d).