Coder Social home page Coder Social logo

Comments (6)

dominicbarnes avatar dominicbarnes commented on August 18, 2024 1

The changes worked great! Thank you very much, I don't think this fix is necessary anymore.

from gosnowflake.

smtakeda avatar smtakeda commented on August 18, 2024

Thanks for filing an issue. I'll look into this tomorrow morning or earlier.

from gosnowflake.

smtakeda avatar smtakeda commented on August 18, 2024

It appeared the driver method Ping is called only after the connection is success. Hence the context is not honored if the connection fails. In that sense, the functionality of Ping is not really to check the connectivity rather making sure the connected database is functional.

Anyway I believe the goal here is when an invalid account name is specified, how quickly connection failure can be detected and raises an error to the user, right?

I see the issue is LoginTimeout is not honored if it is less than 60 seconds and the connection hangs. But I get 403 back as soon as it founds the endpoint doesn't exist, e.g., https://foobar-somewhere.snowflakecomputing.com/, so LoginTimeout works.

Do you experience something different to me? such as hanging and waiting for 60 seconds on every connection failure?

from gosnowflake.

dominicbarnes avatar dominicbarnes commented on August 18, 2024

@smtakeda as described in my code sample, the LoginTimeout works just fine. The context not being respected is the reason for this bug report, as I tried this method before I discovered the LoginTimeout config.

As far as what to do for an invalid account, I agree with you that it would be much preferred that we identify that condition much more quickly as it's currently indistinguishable from a network error.

from gosnowflake.

smtakeda avatar smtakeda commented on August 18, 2024

Thanks for confirmation. At the moment, I cannot do much for the behavior of Ping with context due to what I discovered. But the driver could raise an error as soon as HTTP 403 is returned in authentication. The only reason why the driver retries for 403 is because AWS S3 endpoints sometimes return 403 and retry often works, but since the authentication won't involve AWS S3 endpoints, I believe it should be fine. Working on the fix.

from gosnowflake.

smtakeda avatar smtakeda commented on August 18, 2024

@dominicbarnes can you please try the latest code? e1f17ec

from gosnowflake.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.