It4innovations / hyperqueue

Scheduler for sub-node tasks for HPC systems with batch scheduling
https://it4innovations.github.io/hyperqueue
MIT License
272 stars 21 forks source link

Make version detection more precise #578

Closed Kobzol closed 1 year ago

Kobzol commented 1 year ago

Print some development suffix to HQ version when a development (non-production) build is used, and also use it for checking correct server/client/worker versions.

It is now possible to have e.g. a client with a development version that has some incompatible protocol changes, but it connect fine to a production server with the same major version.

spirali commented 1 year ago

In the current version, there is mechanism of checking version of protocol (build in Tako in the encryption handshake). We can use this. Currently we are basically breaking the protocol with every release, so I just propose that users have to match the version exactly.

Kobzol commented 1 year ago

Yes, we are breaking the protocol with every release, I would suggest to break it more often => do not allow communication between released (production) and development builds. Or at least show a warning in that case.