PlayPen / playpen-core

Server management and load balancing framework
http://playpen.io
MIT License
33 stars 7 forks source link

Add protocol version check #5

Closed redxdev closed 8 years ago

redxdev commented 8 years ago

The version of playpen itself is usually irrelevant, as the NC doesn't care how an LC executes a task as long as it gets done. The protocol, on the other hand, is extremely important. We need to implement a simple version number in the message wrapper or in SYNC. The NC should close any connection with a version mismatch and log a warning.

The version number should only ever be updated if backwards compatibility cannot be guaranteed. Protobuf gives us a lot of leeway in allowing backwards compatibility via optional fields and field ids, so the version shouldn't change often.

redxdev commented 8 years ago

Fixed in 2d6e110883b8d44de4a9a1ca2e247c601cfd93a5