Q Kang created BAHIR-247:
----------------------------

             Summary: Enable idle connection testing for Flink-Redis Connector
                 Key: BAHIR-247
                 URL: https://issues.apache.org/jira/browse/BAHIR-247
             Project: Bahir
          Issue Type: Improvement
          Components: Flink Streaming Connectors
    Affects Versions: Flink-1.0
            Reporter: Q Kang


When idle connections are timed-out and closed by Redis server, the following 
exception will be thrown and the Flink job will eventually fail:
{code:java}
redis.clients.jedis.exceptions.JedisConnectionException: Unexpected end of 
stream. at 
redis.clients.util.RedisInputStream.ensureFill(RedisInputStream.java:199) at 
redis.clients.util.RedisInputStream.readByte(RedisInputStream.java:40) at 
redis.clients.jedis.Protocol.process(Protocol.java:151) at 
redis.clients.jedis.Protocol.read(Protocol.java:215)
......
{code}
It is clear that RedisCommandsContainerBuilder made use of 
GenericObjectPoolConfig without setting any parameters relating to idle 
testing. There are 2 possible solutions:
 # Replace GenericObjectPoolConfig directly with JedisPoolConfig, which enabled 
idle testing by default;
 # Make `testWhileIdle` and other related params configurable by user in 
FlinkJedisPoolConfig.

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to