IoTDB1.X windows运行失败问题的处理

在windows运行 IoTDB1.x时 会出现如图所示的问题

IoTDB1.X windows运行失败问题的处理_第1张图片

为什么会出现这样的问题?java没有安装还是未调用成功,我是JAVA8~11~17各种更换都未能解决问题,最后对其bat文件进行查看,发现在conf\datanode-env.bat、conf\confignode-env.bat这两个文件的

IoTDB1.X windows运行失败问题的处理_第2张图片

在最后的MAX_HEAP_SIZE不对了,最初的解决方案是,给设定了一个固定的 max_heap_size_in_mb参数值,例如:

set max_heap_size_in_mb = 1024

此处设置的大小为MB,不能超过系统内存的1/8不然也会因为内存问题而启动失败

但是部署在客户现场的话不可能每次就更改大小,所以经过测试发现在

if %half_% GTR 1024 set half_=1024
if %quarter_% GTR 65536 set quarter_=65536

if %half_% GTR %quarter_% (
	set max_heap_size_in_mb=%half_%
) else set max_heap_size_in_mb=%quarter_%

在重新设置quarter_值得时候导致,后续的quarter_总是大于half_,例如你电脑是8G内存,那么最后half_为1G,quarter_成了2G,那么肯定会启动失败,

所以最终文件进行修改,

if %half_% GTR 1024 set half_=1024
if %quarter_% GTR 65536 set quarter_=65536

@REM if %half_% GTR %quarter_% (
	set max_heap_size_in_mb=%half_%
@REM ) else set max_heap_size_in_mb=%quarter_%

注释掉相应的判断,让内存的设置永远跟着half_去走,也就是1G的使用量,在win10、server2016下8G、16G内存空间试用均无异常。

你可能感兴趣的:(IoTDB,iotdb)