[
https://issues.apache.org/jira/browse/IMPALA-10856?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Quanlong Huang reassigned IMPALA-10856:
---------------------------------------
Assignee: sichun zhai
> Show connections in the web UI
> ------------------------------
>
> Key: IMPALA-10856
> URL: https://issues.apache.org/jira/browse/IMPALA-10856
> Project: IMPALA
> Issue Type: Improvement
> Components: Backend
> Reporter: Quanlong Huang
> Assignee: sichun zhai
> Priority: Major
> Labels: observability, ramp-up
>
> HS2 protocol allows for the session to independent from the connection.
> Clients like HUE that use connection pools may use a session across different
> connections. We correctly handle this in IMPALA-1653. After that, each
> session can be associated to more than one connections. It would be helpful
> to show these connections in the /sessions page of coordinator's web UI. Note
> that fe service threads actually maps to the number of connections, not
> sessions.
> BTW, the "Network Address" column only shows the first connection of a
> session. We should add all connections of it.
> The handler for the /sessions URL:
> [https://github.com/apache/impala/blob/5a9dcd108d8a1c6f3ea0062d8de750b6e41fb635/be/src/service/impala-http-handler.cc#L562]
> The web page template of the /sessions page:
> [https://github.com/apache/impala/blob/5a9dcd108d8a1c6f3ea0062d8de750b6e41fb635/www/sessions.tmpl]
> The connection-session relationship is maintained in
> connection_to_sessions_map_:
> [https://github.com/apache/impala/blob/5a9dcd108d8a1c6f3ea0062d8de750b6e41fb635/be/src/service/impala-server.h#L1433]
>
> Each session also tracks its connections:
> [https://github.com/apache/impala/blob/5a9dcd108d8a1c6f3ea0062d8de750b6e41fb635/be/src/service/impala-server.h#L629]
> Connection info is defined here:
> [https://github.com/apache/impala/blob/5a9dcd108d8a1c6f3ea0062d8de750b6e41fb635/be/src/rpc/thrift-server.h#L96-L109]
> {code:cpp}
> struct ConnectionContext {
> TUniqueId connection_id;
> Username username;
> Username do_as_user;
> TNetworkAddress network_address;
> std::string server_name;
> /// Used to pass HTTP headers generated by the input transport to the
> output transport
> /// to be returned.
> std::vector<std::string> return_headers;
> std::string saml_response;
> std::string saml_relay_state;
> std::unique_ptr<TWrappedHttpRequest> request;
> std::unique_ptr<TWrappedHttpResponse> response;
> };
> {code}
> We should at least showing these fields: connection_id, username, do_as_user,
> network_address, server_name.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]