edi3 / edi3-igl

Inter-Goverment Ledger
GNU General Public License v3.0
1 stars 6 forks source link

Clarifications on Requirements 14 #24

Open shujingliew opened 5 years ago

shujingliew commented 5 years ago

R14 - The ICL MUST allow transactions to be written individually or in bulk.

Would like to clarify the term "in bulk". Does it mean sending 10 records in one transactions and [1] ICL will process all 10 records concurrently; or [2] ICL will process 10 records one by one?

monkeypants commented 5 years ago

also: imagine you send 9 valid transactions + 1 invalid transaction; is the batch of 10 transactions rejected? Or is one transaction rejected and the other 9 accepted? In other words, does the bulk interface have "all or nothing semantics"?

onthebreeze commented 5 years ago

I think the "Message API" can/should be able to handle a list of messages (ie bulk). However, the nature of the DLT is that each one must be processed separately at the channel API layer (because some may succeed and other may fail). The Message API can asynchronously process a list and return a list of matching success/fail DLT channel responses.

monkeypants commented 5 years ago

per #28, this means POST {list of one or more messages} /messages returns a list of receipts, rather than a single receipt