For input operator there will be no much difference, but in case
connection to IMDG is needed in other operators (for example to lookup
extra info), it will be better to establish connection in setup() to
avoid unnecessary dropping and re-establishing connection in
activate/deactivate if upstream operator fails that may lead to longer
recovery times. To be consistent with other operators, I would recommend
to use setup() in input operator as well.
Vlad
On 8/5/16 06:01, Chinmay Kolhatkar wrote:
Hi Alex,
setup and activate both are guaranteed to be called before starting of
dataflow. Hence in your case either should be fine.
There might be few hundred ms of gap between setup call and the first
window. activate is called just before first beginWindow.
Hence my preference would be to initialize of connections in activate
rather than setup going by the idea of relinquish the resources as
late as possible and release them as early is possible.
Just make sure that the finalization of resources is done in the
matching function (teardown / deactivate).
-Chinmay.
On Fri, Aug 5, 2016 at 6:10 PM, McCullough, Alex
<alex.mccullo...@capitalone.com
<mailto:alex.mccullo...@capitalone.com>> wrote:
If I have an input operator the connects to an IMDG (hazelcast)
and is polling a queue to emit in to my dag, should I put the code
to make the connection and get the queue in my setup or activate
method?
I’m not sure what would drive you to put it in one or another. My
thought was to handle the connection in setup and then have a
Boolean that controls whether the emitTuples method is polling the
queue be toggled true/false by the activate and deactivate methods.
When looking at malhar I see examples of this sort of thing
handled in a bunch of different ways, any advice on what should be
handled in each method?
Thanks,
Alex
------------------------------------------------------------------------
The information contained in this e-mail is confidential and/or
proprietary to Capital One and/or its affiliates and may only be
used solely in performance of work or services for Capital One.
The information transmitted herewith is intended only for use by
the individual or entity to which it is addressed. If the reader
of this message is not the intended recipient, you are hereby
notified that any review, retransmission, dissemination,
distribution, copying or other use of, or taking of any action in
reliance upon this information is strictly prohibited. If you have
received this communication in error, please contact the sender
and delete the material from your computer.