-
Bug
-
Resolution: Unresolved
-
Low
-
None
-
6.10.1, 7.6.3, 7.14.1, 9.2.4
-
None
-
3
-
Severity 3 - Minor
-
2
-
Issue Summary
At the moment admins are not able to add new users in Space Permissions, when there is already a lot of users configured in the Space Permissions. The page refreshes, but the new added user is not configured and no error message is seen.
The following can be seen in the tomcat logs when this happens:
10-Aug-9999 20:58:20.930 INFO [http-nio-8090-exec-9] org.apache.tomcat.util.http.Parameters.processParameters More than the maximum number of request parameters (GET plus POST) for a single request ([10,000]) were detected. Any parameters beyond this limit have been ignored. To change this limit, set the maxParameterCount attribute on the Connector.
By default, the Tomcat server limits the number of parameter and value pairs within the HTTP request to 10,000. When saving space permissions, Confluence sends one parameter/value pair for each user and/or group and for each permission. Since each user/group can have multiple permissions, this number of parameter/value pairs can quickly increase beyond the 10,000 limit.
For more details on the Tomcat maxParameterCount parameter, please see: Apache Tomcat 9 Configuration Reference
The issue here is that admins are not aware about this, as there is no visible error message in the UI.
Steps to Reproduce
- Populate a space with at least 450 users ensuring that they are all given all the permissions.
- Attempt to add a new user. Ensure that the total number of variable pairs exceed 10000
Expected Results
- User Permission is added normally or
- Error message is seen to inform the admin the reason the user permission was not added
Actual Results
- The space permission page refreshes.
- The User is not added.
- No error message or warning seen in the UI.
- The following can be seen in the tomcat logs
10-Aug-9999 20:58:20.930 INFO [http-nio-8090-exec-9] org.apache.tomcat.util.http.Parameters.processParameters More than the maximum number of request parameters (GET plus POST) for a single request ([10,000]) were detected. Any parameters beyond this limit have been ignored. To change this limit, set the maxParameterCount attribute on the Connector.
- In the payload tab in the Developer Tools, of the browser, you will notice that there are more than 10000 value pairs
Workaround
Solution 1
If hundreds of users have been added to a space individually, the best option would be to use Groups to provide permissions to Space.
Solution 2
If the option above is not viable, increase the maxParameterCount within Tomcat:
- Stop Confluence
- Add the maxParameterCount parameter to the Tomcat connector in the <confluence-install-folder>/conf/server.xml file. For example:
<Connector port="8090" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" maxParameterCount="15000"/>
- Start Confluence