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)