-
Notifications
You must be signed in to change notification settings - Fork 851
HttpConnectionCount move to iocore/net #10696
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
HttpConnectionCount move to iocore/net #10696
Conversation
86b09f9 to
e051fc9
Compare
|
Let me clarify that this PR has
But doesn't have
|
Yep, I think that covers it. |
e051fc9 to
94f6000
Compare
And this has the implementation of per_client connection max: I'll take that out of draft once this lands. |
This moves HttpConnectionCount to iocore/net from proxy/http in anticipation to using its functionality on the client accept connection side. While doing so, this also renames HttpConnectionCount to ConnectionTracker because it is no longer HTTP transaction specific.
Moving ConnectionTracker to iocore/net induced linking behavior differences that required these changes to fix test_net.
tls_bridge had previously linked to tscore, but had copied in its own version of Regex. This removes the duplicated code and logic which, with these changes, caused duplicate definitions errors.
94f6000 to
2bb82fa
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ConnectionTracker is using enums in this header?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, it uses the TS_SERVER_OUTBOUND_MATCH stuff to keep parity there:
enum MatchType {
MATCH_IP = TS_SERVER_OUTBOUND_MATCH_IP, ///< Match by IP address.
MATCH_PORT = TS_SERVER_OUTBOUND_MATCH_PORT, ///< Match by IP address and port.
MATCH_HOST = TS_SERVER_OUTBOUND_MATCH_HOST, ///< Match by hostname (FQDN).
MATCH_BOTH = TS_SERVER_OUTBOUND_MATCH_BOTH, ///< Hostname, IP Address and port.
};
masaori335
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now, this is simple cleanups and moving code.
* HttpConnectionCount move to iocore/net This moves HttpConnectionCount to iocore/net from proxy/http in anticipation to using its functionality on the client accept connection side. While doing so, this also renames HttpConnectionCount to ConnectionTracker because it is no longer HTTP transaction specific. * Build updates for test_net Moving ConnectionTracker to iocore/net induced linking behavior differences that required these changes to fix test_net. * Fix tls_bridge to use Regex from tscore tls_bridge had previously linked to tscore, but had copied in its own version of Regex. This removes the duplicated code and logic which, with these changes, caused duplicate definitions errors. (cherry picked from commit fc3f12e) Conflicts: include/proxy/http/HttpConnectionCount.h include/proxy/http/HttpProxyAPIEnums.h include/shared/overridable_txn_vars.h iocore/cache/test/main.cc iocore/net/ConnectionTracker.cc iocore/net/ConnectionTracker.h iocore/net/Makefile.am iocore/net/SessionSharingAPIEnums.h iocore/net/libinknet_stub.cc plugins/experimental/tls_bridge/CMakeLists.txt plugins/experimental/tls_bridge/tls_bridge.cc proxy/PoolableSession.h proxy/http/Http1ServerSession.h proxy/http/HttpConfig.h proxy/http/HttpConnectionCount.cc proxy/http/HttpConnectionCount.h proxy/http/HttpProxyAPIEnums.h proxy/http/HttpProxyServerMain.cc proxy/http/HttpSM.cc proxy/http/HttpTransact.h src/api/CMakeLists.txt src/iocore/net/CMakeLists.txt src/proxy/http/CMakeLists.txt src/proxy/http/HttpConfig.cc src/proxy/http/HttpConnectionCount.cc src/shared/overridable_txn_vars.cc src/tests/CMakeLists.txt src/traffic_server/InkAPI.cc Co-authored-by: Brian Neradt <brian.neradt@gmail.com>
This moves HttpConnectionCount to iocore/net from proxy/http in
anticipation to using its functionality on the client accept connection
side. While doing so, this also renames HttpConnectionCount to
ConnectionTracker because it is no longer HTTP transaction specific.