Java序列化会创建巨大的MapEntry数组吗?

时间:2015-01-18 07:25:20

标签: java arrays out-of-memory case-insensitive

我使用Spring jdbc作为我的持久层,并在结果列表中使用带有默认map的queryForList。我可以检查地图是ListOrderedMap装饰的CaseInsensitiveMap。在prod env中,我们得到了OOM,在检查转储文件之后,我们发现了一些(大约5个)具有大型MapEntry数组的巨大CaseInsensitiveMap,但是,我们通过MAT潜入数据,发现MapEntry数组中只有6个条目。但数组大小为134217728.所有5个映射都具有相同大小的条目数组。从MAT中读取更多细节时,我们发现这与ObjectInputStream或java.io.SerialCallbackContext有关。有没有人遇到这样的问题,当地图很小但是从序列化读取后得到一个大的入口数组?

0 个答案:

没有答案