-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
postgres: create dynamic metadata #11065
Comments
|
Please assign it to me. |
|
This would be very helpful. What kind of metadata do you plan to expose, do you have an initial design for it? Happy to provide feedback if that could help :) |
|
As the first step I was thinking about producing the same metadata as mySQL: https://www.envoyproxy.io/docs/envoy/latest/configuration/listeners/network_filters/mysql_proxy_filter#config-network-filters-mysql-proxy-dynamic-metadata. |
|
I checked that, and left me with some doubts. For example:
Moreover, how do you plan to parse, with the SQL parser already available in Envoy? It would be interesting to see how it would handle Postgres queries, but any work in this direction will be extremely helpful for this and other future goals that require SQL parsing. |
Yes, that was the idea - to start with SQL parser available in Envoy and extend it when required.
Very valid points. I suggest that we join forces and work on document summarizing use cases and describing the logic how to handle non-trivial queries. |
|
Yes, perfect. Feel free to create and share a document, we can work there. |
|
/assign @cpakulski |
…es (#11368) Description: Created _sqlutils_ library to be shared for common functionality between SQL filters. mysql and postgres filters will use that library to create filter metadata based on SQL query. mysql filter was already producing metadata but postges will use the new library as described in #11065. Risk Level: Low: No new functionality has been added and only mysql_proxy filter is affected Testing: Added unit tests. Docs Changes: No. Release Notes: No. Fixes: #11320 Signed-off-by: Christoph Pakulski <christoph@tetrate.io>
…es (envoyproxy#11368) Description: Created _sqlutils_ library to be shared for common functionality between SQL filters. mysql and postgres filters will use that library to create filter metadata based on SQL query. mysql filter was already producing metadata but postges will use the new library as described in envoyproxy#11065. Risk Level: Low: No new functionality has been added and only mysql_proxy filter is affected Testing: Added unit tests. Docs Changes: No. Release Notes: No. Fixes: envoyproxy#11320 Signed-off-by: Christoph Pakulski <christoph@tetrate.io> Signed-off-by: Arthur Yan <arthuryan@google.com>
…es (envoyproxy#11368) Description: Created _sqlutils_ library to be shared for common functionality between SQL filters. mysql and postgres filters will use that library to create filter metadata based on SQL query. mysql filter was already producing metadata but postges will use the new library as described in envoyproxy#11065. Risk Level: Low: No new functionality has been added and only mysql_proxy filter is affected Testing: Added unit tests. Docs Changes: No. Release Notes: No. Fixes: envoyproxy#11320 Signed-off-by: Christoph Pakulski <christoph@tetrate.io> Signed-off-by: yashwant121 <yadavyashwant36@gmail.com>
…es (envoyproxy#11368) Description: Created _sqlutils_ library to be shared for common functionality between SQL filters. mysql and postgres filters will use that library to create filter metadata based on SQL query. mysql filter was already producing metadata but postges will use the new library as described in envoyproxy#11065. Risk Level: Low: No new functionality has been added and only mysql_proxy filter is affected Testing: Added unit tests. Docs Changes: No. Release Notes: No. Fixes: envoyproxy#11320 Signed-off-by: Christoph Pakulski <christoph@tetrate.io>
|
This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or other activity occurs. Thank you for your contributions. |
|
Work in progress. |
…es (envoyproxy#11368) Description: Created _sqlutils_ library to be shared for common functionality between SQL filters. mysql and postgres filters will use that library to create filter metadata based on SQL query. mysql filter was already producing metadata but postges will use the new library as described in envoyproxy#11065. Risk Level: Low: No new functionality has been added and only mysql_proxy filter is affected Testing: Added unit tests. Docs Changes: No. Release Notes: No. Fixes: envoyproxy#11320 Signed-off-by: Christoph Pakulski <christoph@tetrate.io> Signed-off-by: yashwant121 <yadavyashwant36@gmail.com>
Create metadata similar to MySQL based on SQL query sent by Postgres client. The metadata may be used by other filters like RBAC. Risk Level: Low. Testing: Added unit tests. Docs Changes: Yes - updated Postgres section. Release Notes: Yes. Fixes #11065 Signed-off-by: Christoph Pakulski <christoph@tetrate.io>
Create metadata similar to MySQL based on SQL query sent by Postgres client. The metadata may be used by other filters like RBAC. Risk Level: Low. Testing: Added unit tests. Docs Changes: Yes - updated Postgres section. Release Notes: Yes. Fixes envoyproxy#11065 Signed-off-by: Christoph Pakulski <christoph@tetrate.io>
Create metadata similar to MySQL based on SQL query sent by Postgres client. The metadata may be used by other filters like RBAC. Risk Level: Low. Testing: Added unit tests. Docs Changes: Yes - updated Postgres section. Release Notes: Yes. Fixes envoyproxy#11065 Signed-off-by: Christoph Pakulski <christoph@tetrate.io> Signed-off-by: chaoqinli <chaoqinli@google.com>
Create metadata similar to MySQL based on SQL query sent by Postgres client. The metadata may be used by other filters like RBAC. Risk Level: Low. Testing: Added unit tests. Docs Changes: Yes - updated Postgres section. Release Notes: Yes. Fixes envoyproxy#11065 Signed-off-by: Christoph Pakulski <christoph@tetrate.io> Signed-off-by: chaoqinli <chaoqinli@google.com>
Create dynamic metadata when parsing Postgres messages (similar to mySQL). The metadata will indicate an operation (create, delete, insert, etc) and resource on which the operation will be performed.
The metadata may be used by RBAC or routing of queries to specific instances of Postgres based on operation type.
Ref: https://www.envoyproxy.io/docs/envoy/latest/configuration/advanced/well_known_dynamic_metadata
The text was updated successfully, but these errors were encountered: