project-iris / iris

Decentralized cloud messaging
iris.karalabe.com
Other
571 stars 32 forks source link

Fixed bootstrap probe issue #46 #49

Closed phifty closed 9 years ago

karalabe commented 9 years ago

Thanks :) I'll check it out soon and merge if everything works.

In the mean time, may I request that you sign a contributor agreement? It is a requirement for all code contributions to guarantee the legal cleanness of the code-base (i.e. that all source code belongs to the project and haven't been copied from somewhere else).

It is a pretty straightforward requirement used - among others - by the Go project too (actually, Iris uses the exact same license agreement). In essence the license reads that you retain all rights to your contribution (i.e. you can do whatever you want with it), but you also allow the project to do whatever it wants with it.

phifty commented 9 years ago

The agreement is signed.

karalabe commented 9 years ago

Yep, I saw it, just didn't have time yet to merge your pull request :P

There is a slight issue with it if all interfaces fail (the node will boot up, but will be essentially crippled). Instead of issuing a warning and waiting for termination, it should immediately return a failure. If all bootstrappers fail, the node should be torn down, if not, then booting can continue.

This was why I haven't merged it yet, as I didn't have the time to dig deeper into fixing this :)

karalabe commented 9 years ago

Thanks for this :), I've moved the logging into the bootstrapper constructor as it makes more sense there (the bootstrapper has currently two probing mechanisms, so its weird to have the warning inside one of them).

Additionally I've also relaxed your condition from /32 to /31 (single-host setup, where the broadcast address is used by the host... not seachable either).

phifty commented 9 years ago

Nice, looks good to me. Thanks for the merge :-)