Bump web server max header size to accommodate long urls#11951
Bump web server max header size to accommodate long urls#11951cbalci wants to merge 2 commits intoapache:masterfrom
Conversation
Codecov Report
@@ Coverage Diff @@
## master #11951 +/- ##
============================================
+ Coverage 61.37% 61.44% +0.06%
+ Complexity 1147 207 -940
============================================
Files 2373 2385 +12
Lines 128265 129199 +934
Branches 19799 20000 +201
============================================
+ Hits 78722 79382 +660
- Misses 43850 44062 +212
- Partials 5693 5755 +62
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 139 files with indirect coverage changes 📣 Codecov offers a browser extension for seamless coverage viewing on GitHub. Try it in Chrome or Firefox today! |
Jackie-Jiang
left a comment
There was a problem hiding this comment.
Please take a look at the test failure.
Is the query sent by HTTP header? Why are we setting such a large HTTP header size?
|
Thanks @Jackie-Jiang !
Fixed the test case to reflect the updated URL size limit. Though, I'm not sure if this test serves a meaningful purpose. I can get rid of the case if you agree.
It is not the actual HTTP header which causes the problem but "URL + query string" size. URL + query string is counted towards the maxHttpHeaderSize and URL's such as |
|
What is the side effect of this change? I'd assume it requires broker to allocate larger buffer for each request handling thread? Will it potentially cause memory issue? |
|
For a query longer than 8K bytes, IMO we should not allow it to be posted along with the URL. |
There are some endpoints (e.g. broker API
/debug/routingTable/sql) which accept SQL as query string param. Default limit of 8K bytes can be too little for long queries so I'm bumping it to a more reasonable value, 64K.Ideally this should be fixed by moving the parameter to request body (POST), but this change is also needed to help older clients.
bugfix