-
Notifications
You must be signed in to change notification settings - Fork 69
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add application version within the management protocol #392
Comments
👍 to the idea. We just have to figure out what we want in that header... could also be stuff like the entire size of the management invocation |
Well, since we are going to add stuff, I think there is room for placing a size of the request. |
Yeah, the name of the client plus its version number would be a good idea. The response should include the version of the pgagroal instance. An idea could be to be to create a variable length header where each "section" is identified by a unique |
I think that changing |
Sounds good - a prototype of it will likely give a clearer indication of what is the best solution |
Ok, I think this will be done in the next year, and after #391 has completed. |
👍 |
is this a possible GSoC 2024 project? |
I don't think so: this is a quite short (even if not so trivial) change to the communication protocol. |
Meanwhile, I was thinking that either this change to the communication protocol can either broke backward compatibility or not. On the other hand, we could add the "new" information at the very end of the message, but this would prevent a possible compatibility check (e.g., |
Getting new ideas into the project should not block the progress. If we decide to change the CLI and management protocol that is enough for a version 2.0 -- it doesn't have to be at a pool level. And yes, changing the management protocol isn't "large" enough for a GSoC 2024 project, even for a short project. |
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version into the header over which pgagroal-cli and pgagroal communicate. Introduces the 'write_header_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version into the header over which pgagroal-cli and pgagroal communicate. Introduces the 'write_header_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version into the header over which pgagroal-cli and pgagroal communicate. Introduces the 'write_header_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version into the header over which pgagroal-cli and pgagroal communicate. Introduces the 'write_header_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version into the header over which pgagroal-cli and pgagroal communicate. Introduces the 'write_header_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version in the socket over which pgagroal-cli and pgagroal communicate. Introduces the 'write_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version in the socket over which pgagroal-cli and pgagroal communicate. Introduces the 'write_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version in the socket over which pgagroal-cli and pgagroal communicate. Introduces the 'write_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version in the socket over which pgagroal-cli and pgagroal communicate. Introduces the 'write_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version in the socket over which pgagroal-cli and pgagroal communicate. Introduces the 'write_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version in the socket over which pgagroal-cli and pgagroal communicate. Introduces the 'write_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version in the socket over which pgagroal-cli and pgagroal communicate. Introduces the 'write_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version in the socket over which pgagroal-cli and pgagroal communicate. Introduces the 'write_info' function in management.c.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version in the socket over which pgagroal-cli and pgagroal communicate.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version in the socket over which pgagroal-cli and pgagroal communicate.
In order to improve debugging, [agroal#392] suggested to write the sender application name and its version in the socket over which pgagroal-cli and pgagroal communicate.
While working on #391 I got the idea that, since
pgagroal-cli
andpragroal
are communicating over a socket thru the management protocol, chances are that the two applications are not at the very same version.In order to better diagnose problems and even receive a better and more constant behavior, we should transmit the version of
pgagroal-cli
andpgagroal
thru the socket, so that both parties have information about who they are talking to.Moreover, this could be a chance to even block request made by older versions of any of the two to the other part.
My idea is to add an header-like block to any request sent out from
pgagroal-cli
, havingpgagroal
to get it in the begin of the message (so, at a constant offset) and viceversa, havingpgagroal
to send out the same information as the first part of the communication protocol.This should not require a lot of changes in the management protocol implementation.
However, I would postpone this to #391 because importing JSON output will speed up the debugging of this implementation.
The text was updated successfully, but these errors were encountered: