Robert Collins created BEAM-6494:
------------------------------------

             Summary: We do not sync pipeline with server at bundle end, only 
during teardown
                 Key: BEAM-6494
                 URL: https://issues.apache.org/jira/browse/BEAM-6494
             Project: Beam
          Issue Type: Bug
          Components: io-java-redis
    Affects Versions: 2.9.0
            Reporter: Robert Collins
            Assignee: Jean-Baptiste Onofré


The redis pipeline object only sends executed commands to the redis server when 
sync() or close() are called. If these are not called, the calls stay inside 
the buffer. As teardown is not guaranteed to be called, we should call 
pipeline.sync() inside finishBundle, after pipeline.exec(). 
[docs|https://beam.apache.org/releases/javadoc/2.5.0/org/apache/beam/sdk/transforms/DoFn.Teardown.html]

 

@FinishBundle
public void finishBundle() {
 if (pipeline.isInMulti()) {
 pipeline.exec();
 }
 batchCount = 0;
}

@Teardown
public void teardown() {
 jedis.close();
}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to