View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0002966 | GNUnet | cadet service | public | 2013-07-23 15:38 | 2013-12-24 20:54 |
Reporter | Florian Dold | Assigned To | Bart Polot | ||
Priority | urgent | Severity | feature | Reproducibility | have not tried |
Status | closed | Resolution | fixed | ||
Product Version | Git master | ||||
Target Version | 0.10.0 | Fixed in Version | 0.10.0 | ||
Summary | 0002966: mesh's behavior on client-service disconnect breaks stateful protocols | ||||
Description | In the mesh api, when the mesh-api/mesh-service connection is lost, tunnels are re-created transparently to the api user. However, this practically only happens when the service crashes (what would be other causes?). In this case, tunnels are lost, and the api's reconnect creates what is practically a new tunnel to the same remote peer. This behavior is a hindrance if the protocol spoken over the tunnel is stateful - for example in SET, as for the other peer, the connection seems to be lost first, but then the there's unexpected traffic on a new tunnel. Ditching automatic reconnects would also reduces the api's implementation footprint, and I don't see many reasons to have the current behavior (except reducing code in clients for stateless protocols -- but what about message loss when the client-service connection breaks?) | ||||
Tags | No tags attached. | ||||
related to | 0003131 | closed | Bart Polot | mesh crash causes consensus to fail |
|
"It's not a bug, it's a feature". This was part of the original mesh design. I guess Christian should decide about this one. |
|
As discussed with Christian, if the connection breaks, all tunnels should be reported to the tunnel end handler, and the mesh API should not try to re-establish the tunnels. |
|
Changed in r30874. |
Date Modified | Username | Field | Change |
---|---|---|---|
2013-07-23 15:38 | Florian Dold | New Issue | |
2013-07-23 15:38 | Florian Dold | Status | new => assigned |
2013-07-23 15:38 | Florian Dold | Assigned To | => Bart Polot |
2013-07-23 15:42 | Bart Polot | Note Added: 0007287 | |
2013-07-24 15:14 | Florian Dold | Note Added: 0007295 | |
2013-11-15 13:07 | Bart Polot | Priority | normal => urgent |
2013-11-26 15:25 | Florian Dold | Relationship added | related to 0003131 |
2013-11-26 16:22 | Bart Polot | Note Added: 0007707 | |
2013-11-26 16:22 | Bart Polot | Status | assigned => resolved |
2013-11-26 16:22 | Bart Polot | Fixed in Version | => Git master |
2013-11-26 16:22 | Bart Polot | Resolution | open => fixed |
2013-11-26 23:40 | Christian Grothoff | Fixed in Version | Git master => 0.10.0 |
2013-11-26 23:40 | Christian Grothoff | Target Version | => 0.10.0 |
2013-12-24 20:54 | Christian Grothoff | Status | resolved => closed |
2014-05-09 18:34 | Christian Grothoff | Category | mesh service => cadet service |