Will Noble created CALCITE-5189:
-----------------------------------
Summary: Add support for constant HTTP path prefixes to Avatica
server
Key: CALCITE-5189
URL: https://issues.apache.org/jira/browse/CALCITE-5189
Project: Calcite
Issue Type: New Feature
Components: avatica
Reporter: Will Noble
Assignee: Will Noble
Some load balancers, such as those based on [Kubernetes ingress
rules|https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.19/#httpingressrulevalue-v1beta1-networking-k8s-io],
can only route requests based on HTTP path. To support hosting an Avatica
server behind such a load balancers, the driver should support prepending all
HTTP request paths with a constant (configurable) prefix, and the server should
support stripping that constant prefix from all requests is receives.
On the server side, this can either be done as a piece of middleware (A handler
wrapper that just strips the prefix then delegates to the real handler), or by
modifying the existing 2 handlers ({{AvaticaProtobufHandler}} and
{{AvaticaJsonHandler}}) to ignore the prefix (without duplicating code). I'm
leaning toward the former, since it would obviate the need to worry about it in
any custom / future handlers.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)