fastjson2 icon indicating copy to clipboard operation
fastjson2 copied to clipboard

[BUG]解析错误的数据结构时,死循环最终内存溢出

Open HsinDumas opened this issue 1 year ago • 0 comments

问题描述

解析错误的数据结构时,死循环最终内存溢出

环境信息

请填写以下信息:

  • JDK信息: 1.8
  • 版本信息:Fastjson2 2.0.11

重现步骤

如何操作可以重现该问题:


   public static void main(String[] args) {
        System.out.println(com.alibaba.fastjson2.JSON.parseArray("[\"3330354\"]", Test.class));
    }

    @Data
    public static class Test {
        private String a;
    }

期待的正确结果

正常报错,而不是一直死循环,最后OOM

相关日志输出

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space at java.util.Arrays.copyOf(Arrays.java:3181) at java.util.ArrayList.grow(ArrayList.java:265) at java.util.ArrayList.ensureExplicitCapacity(ArrayList.java:239) at java.util.ArrayList.ensureCapacityInternal(ArrayList.java:231) at java.util.ArrayList.add(ArrayList.java:462) at com.alibaba.fastjson2.JSONReader.readArray(JSONReader.java:1671) at com.alibaba.fastjson2.JSON.parseArray(JSON.java:1600)

附加信息

HsinDumas avatar Aug 10 '22 05:08 HsinDumas