Commit de5ae7f0 authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent ce197699
...@@ -217,6 +217,13 @@ type _MasterLink struct { ...@@ -217,6 +217,13 @@ type _MasterLink struct {
// //
// Must be called only when master link is established - e.g. from under TalkMaster. // Must be called only when master link is established - e.g. from under TalkMaster.
func (mlink *_MasterLink) Recv1(ctx context.Context) (neonet.Request, error) { func (mlink *_MasterLink) Recv1(ctx context.Context) (neonet.Request, error) {
// XXX this implementation assumes that Recv1 user is serial
// XXX if the client code (that is run from under talkMaster1) becomes
// not serial and calls multiple Recv1 in parallel, the order of
// recvδstate calls might become different compared to the order of
// from-M messages -> corrupt tables.
//
// (for now both users - client and storage - call mlink.Recv1 serially)
for { for {
req, err := mlink.NodeLink.Recv1() // XXX cancel on ctx req, err := mlink.NodeLink.Recv1() // XXX cancel on ctx
if err != nil { if err != nil {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment