Skip to content
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

Critical: "context deadline exceeded" after upgrade from 1.4.0 to 1.5.3 #200

Open
gilsegment opened this issue Apr 3, 2024 · 2 comments

Comments

@gilsegment
Copy link

gilsegment commented Apr 3, 2024

We started getting "context deadline exceeded" after upgrade from 1.4.0 to 1.5.3
This happens during inital connection to the warehouse.
We are getting that error on multiple Databricks warehouses from different accounts.

I suspect we are getting timeout here:

_, err := c.QueryContext(ctx1, "select 1", nil)

which uses hard coded timeout of 60s without option to modify it:

PingTimeout: 60 * time.Second,

Maybe you should use the "timeout" provided in DSN also for the ping

if timeoutSeconds, ok, err := params.extractAsInt("timeout"); ok {

@gilsegment gilsegment changed the title Critical issue! "context deadline exceeded" after upgrade from 1.4.0 to 1.5.3 Critical! "context deadline exceeded" after upgrade from 1.4.0 to 1.5.3 Apr 3, 2024
@gilsegment gilsegment changed the title Critical! "context deadline exceeded" after upgrade from 1.4.0 to 1.5.3 "context deadline exceeded" after upgrade from 1.4.0 to 1.5.3 Apr 4, 2024
@gilsegment gilsegment changed the title "context deadline exceeded" after upgrade from 1.4.0 to 1.5.3 Critical: "context deadline exceeded" after upgrade from 1.4.0 to 1.5.3 Apr 4, 2024
@kravets-levko
Copy link
Collaborator

@gilsegment Can you please help us to narrow down the scope of the issue? 1.5.3 doesn't introduce much changes, so can you please try to gradually upgrade from 1.4.0 and check which version contains the issue? That would help us a lot. Thank you!

@gilsegment
Copy link
Author

gilsegment commented Apr 17, 2024

Unfortunately I cannot do that.
Few things I can suggest are:

  1. See which changes are relevant in the release notes from 1.4.0 to 1.5.3
  2. Respect the timeout input parameter like I recommended in my initial comment. Or introduce a new parameter just for the ping.
  3. Check if during the time I reported this, there was a backend issue with Databricks that might have caused that. I think this it less likely because we seen this happening right after the client library was upgraded. But still possible. (first query after connection takes long time -> "select 1" in our case)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants