-
Notifications
You must be signed in to change notification settings - Fork 157
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Option to disable dial on creating client #584
base: main
Are you sure you want to change the base?
feat: Option to disable dial on creating client #584
Conversation
Hi @rueian I decided to begin on this
Thanks in advance. Let me know which direction I can take for this |
If you are asking how to write tests for this behavior, I think passing a custom
I think, yes, returning their concrete structs is enough except for the sentinel client. The sentinel client may need some modifications to support auto-retry. But for all these three cases, the initial |
|
||
_, port, _ := net.SplitHostPort(ln.Addr().String()) | ||
|
||
dialFn := func(addr string, dialer *net.Dialer, tlsConfig *tls.Config) (net.Conn, error) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rueian Do you think this is how I should do it?
In principle it should work but I am not too sure why it is timing out, maybe I'm missing something
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The dailFn
looks good to me but you must invoke client.Do
to trigger the dailFn
again after the NewClient
. Otherwise, the dailFn
is only called once.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am slightly stuck here
I should client.Do to trigger the dialFn right after the NewClient call? @rueian
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes. I believe so. There is no other background goroutine that will dial for a connection.
Approach to #489