出现"java.lang.RuntimeException: 分段已被释放"错误通常是由于Mini Cluster运行时的问题导致的。下面是一些可能的解决方法:
ResourceManagerOptions.CONTAINERIZED_HEAP_CUTOFF_RATIO
来增加堆内存的限制,或者通过设置TaskExecutorOptions.CPU_CORES
来增加CPU核心数量的限制。// 设置堆内存限制
configuration.set(ResourceManagerOptions.CONTAINERIZED_HEAP_CUTOFF_RATIO, 0.75);
// 设置CPU核心数量限制
configuration.set(TaskExecutorOptions.CPU_CORES, 4);
// 设置任务槽数量
configuration.set(TaskManagerOptions.NUM_TASK_SLOTS, 4);
// 设置作业超时时间
configuration.set(JobManagerOptions.JOB_TIMEOUT, Duration.ofMinutes(10));
// 查看Mini Cluster的日志
MiniClusterWithClientResource miniCluster = new MiniClusterWithClientResource(new MiniClusterResourceConfiguration.Builder()
.setConfiguration(configuration)
.setNumberTaskManagers(1)
.setNumberSlotsPerTaskManager(4)
.build());
miniCluster.start();
这些解决方法可以帮助您解决"java.lang.RuntimeException: 分段已被释放"错误。请根据具体的情况选择合适的方法进行尝试。