[ 
https://issues.apache.org/jira/browse/KYLIN-5796?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17832751#comment-17832751
 ] 

zhimin wu commented on KYLIN-5796:
----------------------------------

h3. Dev Design
h3. Adding a New System Configuration in KylinConfigBase.java

In the {{KylinConfigBase.java}} file, a new system configuration item named 
{{kylin.web.data-binder.auto-grow-collection-limit}} is added. This 
configuration allows users to customize the size limit of arrays/lists for 
request parameters, with a default value of 256.
h3. Setting autoGrowCollectionLimit in NBasicController.java

In the base controller {{{}NBasicController.java{}}}, set the 
{{autoGrowCollectionLimit}} to the value of the system configuration item 
{{{}kylin.web.data-binder.auto-grow-collection-limit{}}}. It's important to 
note that setting this value too high could potentially lead to security 
vulnerabilities, such as OutOfMemory errors if the application is subjected to 
certain types of attacks (e.g., passing large arrays in the request body).

> The system reports error when the number of models exported exceeds 256 at a 
> time
> ---------------------------------------------------------------------------------
>
>                 Key: KYLIN-5796
>                 URL: https://issues.apache.org/jira/browse/KYLIN-5796
>             Project: Kylin
>          Issue Type: Bug
>            Reporter: zhimin wu
>            Priority: Major
>
> h3. Root Cause
> The root cause of the issue is that the size of the list passed from the 
> frontend exceeds the maximum limit allowed for form-urlencoded requests in 
> Spring. The default limit for the growth of arrays and collections in 
> Spring's DataBinder class is set to 256:
> {code:java}
> public static final int DEFAULT_AUTO_GROW_COLLECTION_LIMIT = 256;{code}
> To address this issue, you may need to adjust the configuration related to 
> the form-urlencoded request handling in Spring to accommodate larger list 
> sizes being passed from the frontend. This could involve increasing the 
> maximum limit for auto-growing collections or implementing alternative 
> solutions to handle larger input data efficiently.
> If you need further assistance or guidance on how to modify the configuration 
> to resolve this issue, please let me know.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to