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 over 8 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 over 8 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).