首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache Ignite :数据区域内存不足[name=Default_Region、initSize=256.0 MiB、maxSize=68.0 GiB、persistenceEnabled=false]

Apache Ignite :数据区域内存不足[name=Default_Region、initSize=256.0 MiB、maxSize=68.0 GiB、persistenceEnabled=false]
EN

Stack Overflow用户
提问于 2019-11-04 15:12:40
回答 1查看 557关注 0票数 1

我们的Apache Ignite生产环境中的数据区域内存不足,Ignite进程被杀死。我们已经配置了68 GB的堆内存。并且没有启用驱逐策略,因为我们不想从Ignite中丢失任何数据。此外,我们没有启用持久性,因为我们只想将整个数据存储在Ignite中。

代码语言:javascript
复制
class org.apache.ignite.internal.mem.IgniteOutOfMemoryException: Out of memory in data region [name=Default_Region, initSize=256.0 MiB, maxSize=68.0 GiB, persistenceEnabled=false] Try the following:
  ^-- Increase maximum off-heap memory size (DataRegionConfiguration.maxSize)
  ^-- Enable Ignite persistence (DataRegionConfiguration.persistenceEnabled)
  ^-- Enable eviction or expiration policies
    at org.apache.ignite.internal.pagemem.impl.PageMemoryNoStoreImpl.allocatePage(PageMemoryNoStoreImpl.java:304)
    at org.apache.ignite.internal.processors.cache.persistence.freelist.AbstractFreeList.allocateDataPage(AbstractFreeList.java:463)
    at org.apache.ignite.internal.processors.cache.persistence.freelist.AbstractFreeList.insertDataRow(AbstractFreeList.java:501)
    at org.apache.ignite.internal.processors.cache.persistence.RowStore.addRow(RowStore.java:97)

此错误的原因是占用了整个数据区域(68 GB)?如果是,我们可以停止Ignite服务来处理这个问题吗?

EN

回答 1

Stack Overflow用户

发布于 2019-11-04 18:42:39

我认为这个错误就像描述的那样,三种解决方案都是有效的。

Ignite more memory

  1. 定义了一个逐出策略,这样记录就会被删除,您就不会耗尽内存
  2. 使用Ignite persistence,它会存储磁盘上内存无法容纳的任何数据

如果你不能分配更多的内存,并且想把所有的东西都保存在Ignite中,它看起来像是选项3。

我们也没有启用持久性,因为我们只想在Ignite中存储整个数据。

需要说明的是: Ignite有两种持久性。第三方持久性,其中Ignite将其数据的副本保存到遗留数据库。以及Ignite自己管理的native persistence。上面的建议主要是关于后者的。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58688713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档