GriGain无法执行请求(连接失败)

时间:2015-04-17 15:33:15

标签: hadoop gridgain

我正在运行一个迭代浮点矩阵的hadoop作业来进行一些计算。除此之外,我还使用GridGain Hadoop acelerator在内存中完成此操作。但是,当我尝试使用1000次迭代运行我的计算时,会发生一些奇怪的事情。这个例外是:

Caused by: class org.gridgain.client.impl.connection.GridClientConnectionResetException: Failed to perform request (connection failed): /127.0.0.1:11211

更奇怪的是,当抛出异常时节点是正常的并且计算似乎仍在继续,但由于异常,我无法获得最终的打印。

以下是在地图阶段完成的计算代码:

float lineResult = 0.0f;
float[] linesResults = new float[lines.length];

for(int x = 0; x < numberOfIterationsPerLine; x++)
{
    for(int y = 0; y < lines.length; y++)//line by line
    {
        lineResult = 0.0f;
        for(int i = 0; i < lines[y].length; i++)//value by value
        {   
            if(i == 0)
                lineResult += lines[y][i] * lines[y][i];
            else
            {
                for(int j = 0; j <= i; j++)
                    lineResult += lines[y][j] * lines[y][i];
            }
        }
        linesResults[y] += lineResult; 
    }
}

for(int z = 0; z < lines.length; z++)
    //write the result
    context.write(new LongWritable(1), new FloatWritable(linesResults[z]));

我已尝试为节点尝试不同大小的堆,从2GB到4GB。这都是在同一台机器上完成的。

有没有人遇到过类似的问题?

感谢您的关注。

1 个答案:

答案 0 :(得分:0)

由于Ignite作业跟踪器(默认端口11211)上的空闲超时,可能会发生这种情况。 请尝试通过节点配置增加空闲超时(默认值为7000):

<bean id="grid.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
...
    <property name="connectorConfiguration">
        <bean class="org.apache.ignite.configuration.ConnectorConfiguration">
            <property name="port" value="11211"/>
            <property name="idleTimeout" value="100000"/>
        </bean>
    </property>