Zhimin Wu created KYLIN-5834:
--------------------------------

             Summary: The system reports error when the number of models 
exported exceeds 256 at a time
                 Key: KYLIN-5834
                 URL: https://issues.apache.org/jira/browse/KYLIN-5834
             Project: Kylin
          Issue Type: Bug
          Components: Metadata
    Affects Versions: 5.0-beta
            Reporter: Zhimin Wu
            Assignee: Zhimin Wu
             Fix For: 5.0.0


*Back Ground*
Kylin's model export feature generates a compressed package containing all 
selected models for export. However, when the number of selected models exceeds 
256, the export function will fail and display an unfriendly error message to 
the user on a separate page, indicating an "IndexOutOfBoundsException: Index: 
256".

*Root Cause*

The size of the list received from the frontend has exceeded the maximum limit 
set for form-urlencoded request parameters in Spring. The default limit for the 
automatic growth of arrays and collections in Spring's DataBinder class is 256.

*Dev Design*

A new system configuration item, 
"kylin.web.data-binder.auto-grow-collection-limit", has been added to 
"KylinConfigBase.java". This item allows users to set the limit for the size of 
array lists when handling request parameters. The default value is 256.

In the base controller class "NBasicController.java", the parameter 
"autoGrowCollectionLimit" is set to the value of the system configuration item 
"kylin.web.data-binder.auto-grow-collection-limit". It should be noted that 
setting this value too high could potentially lead to out of memory errors if 
the application is subject to network attacks, such as a request containing 
"ids[100000]". This change will affect all subclasses that inherit from the 
base controller class.



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

Reply via email to