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

blocking client: fix connect and timeout #499

Merged
merged 4 commits into from
Jun 19, 2024
Merged

blocking client: fix connect and timeout #499

merged 4 commits into from
Jun 19, 2024

Conversation

fantix
Copy link
Member

@fantix fantix commented May 28, 2024

  • Fix an internal method BlockingIOProtocol.wait_for() to always raise TimeoutError on timeout for internal use
  • New connection will now (always) do name resolution, and try all resolved addresses (including IPv6) until succeed
  • The timeout handling in connect_addr() is also improved, mostly fixing wrong early wraps of TimeoutError (they should be caught and manually handled, re-raising ClientConnectionTimeoutError in the outer BaseConnection.connect())

Refs #491 for the initial IPv6 fix, fixes #486

@fantix fantix marked this pull request as ready for review May 29, 2024 00:28
@fantix fantix requested a review from elprans May 29, 2024 00:28
@fantix fantix merged commit 28a83fd into master Jun 19, 2024
52 checks passed
@fantix fantix deleted the blocking-connect branch June 19, 2024 00:45
fantix added a commit that referenced this pull request Jun 19, 2024
New Features
============

* Support EdgeDB 5.0 "branch" connection option
  (by @vpetrovykh in #484 #485 #487)

* Support EdgeDB 5.0 AI extension
  (by @fantix in #489 #490)

Breaking Changes
================

* Enum values can now compare to user-defined enums successfully (#425)
  (by @fantix in bb7522c for #419)

* Add optional default to codegen params (#426)
  (by @fantix in 21b024a for #422)

Changes
=======

* blocking client: fix connect and timeout, support IPv6 (#499)
  (by @fantix @zachary822 in 28a83fd for #486)

Fixes
=====

* Add test to check setting a computed global using with_globals. (#494)
  (by @dnwpark in 636bc0e for #494)

* Fix test and add Python 3.12 in CI
  (by @fantix in #498 #503)

* Use result of pydantic_dataclass, will silence linters (#501)
  (by @AdrienPensart in d88187a)

* Extract ExecuteContext as in/out argument (#500)
  (by @fantix in 2fb7965 for #493)
@fantix fantix mentioned this pull request Jun 19, 2024
fantix added a commit that referenced this pull request Jun 19, 2024
New Features
============

* Support EdgeDB 5.0 "branch" connection option
  (by @vpetrovykh in #484 #485 #487)

* Support EdgeDB 5.0 AI extension
  (by @fantix in #489 #490)

Breaking Changes
================

* Enum values can now compare to user-defined enums successfully (#425)
  (by @fantix in bb7522c for #419)

* Add optional default to codegen params (#426)
  (by @fantix in 21b024a for #422)

Changes
=======

* blocking client: fix connect and timeout, support IPv6 (#499)
  (by @fantix @zachary822 in 28a83fd for #486)

Fixes
=====

* Add test to check setting a computed global using with_globals. (#494)
  (by @dnwpark in 636bc0e for #494)

* Fix test and add Python 3.12 in CI
  (by @fantix in #498 #503)

* Use result of pydantic_dataclass, will silence linters (#501)
  (by @AdrienPensart in d88187a)

* Extract ExecuteContext as in/out argument (#500)
  (by @fantix in 2fb7965 for #493)
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

Successfully merging this pull request may close these issues.

BlockingIOConnection doesn't support IPV6
3 participants