Hi Nathan,
Thanks for raising this, and thanks for the PR proposal.
I would recommend (as it was done in other IOs such as ElasticsearchIO)
the third solution: you could add a method called
withConnectTimeout(Integer) to both the Read and Write builders of the
IO (there is no common conf object on this IO). Indeed, there is sort of
a "no knob" philosophy of Beam to reduce to the minimum the conf
parameters available to the users; hence the encapsulation.
Best
Etienne
On 14/05/2020 00:34, Nathan Fisher wrote:
Hi all,
I frequently test pipelines over a VPN link. As a result the default
SocketOptions configuration results in timeout exceptions. I would
like the ability to tweak the timeouts which requires the ability to
get at Cassandras Cluster.Builder and set a custom socket option:
If I were to raise an issue/PR what would be preference of these options?
- expose only SocketOptions as a setter on the builder.
- allow setting the Cassandra Cluster.Builder on the IO builder.
- encapsulate the socketoptions behind additional methods on the beam
IO builder.
Regards,
Nathan
--
Nathan Fisher
w: http://junctionbox.ca/