Skip to content

Fixed RuntimeBackend exception handling#328

Merged
nfx merged 3 commits intomainfrom
feat/lo-prio
Nov 15, 2024
Merged

Fixed RuntimeBackend exception handling#328
nfx merged 3 commits intomainfrom
feat/lo-prio

Conversation

@nfx
Copy link
Copy Markdown
Collaborator

@nfx nfx commented Nov 15, 2024

Fix #327
Fix #326
Fix #325

@github-actions
Copy link
Copy Markdown

github-actions bot commented Nov 15, 2024

✅ 36/36 passed, 4 skipped, 4m34s total

Running from acceptance #454

@nfx nfx merged commit 7ba1ca0 into main Nov 15, 2024
@nfx nfx deleted the feat/lo-prio branch November 15, 2024 15:36
nfx added a commit that referenced this pull request Nov 15, 2024
* Added nightly tests run at 4:45am UTC ([#318](#318)). A new nightly workflow has been added to the codebase, designed to automate a series of jobs every day at 4:45am UTC on the `larger` environment. The workflow includes permissions for writing id-tokens, accessing issues, reading contents and pull-requests. It checks out the code with a full fetch-depth, installs Python 3.10, and uses hatch 1.9.4. The key step in this workflow is the execution of nightly tests using the databrickslabs/sandbox/acceptance action, which creates issues if necessary. The workflow utilizes several secrets, including VAULT_URI, GITHUB_TOKEN, ARM_CLIENT_ID, and ARM_TENANT_ID, and sets the TEST_NIGHTLY environment variable to true. Additionally, the workflow is part of a concurrency group called "single-acceptance-job-per-repo", ensuring that only one acceptance job runs at a time per repository.
* Bump codecov/codecov-action from 4 to 5 ([#319](#319)). In this version update, the Codecov GitHub Action has been upgraded from 4 to 5, bringing improved functionality and new features. This new version utilizes the Codecov Wrapper to encapsulate the CLI, enabling faster updates. Additionally, an opt-out feature has been introduced for tokens in public repositories, allowing contributors and other members to upload coverage reports without requiring access to the Codecov token. The upgrade also includes changes to the arguments: `file` is now deprecated and replaced with `files`, and `plugin` is deprecated and replaced with `plugins`. New arguments have been added, including `binary`, `gcov_args`, `gcov_executable`, `gcov_ignore`, `gcov_include`, `report_type`, `skip_validation`, and `swift_project`. Comprehensive documentation on these changes can be found in the release notes and changelog.
* Fixed `RuntimeBackend` exception handling ([#328](#328)). In this release, we have made significant improvements to the exception handling in the `RuntimeBackend` component, addressing issues reported in tickets [#328](#328), [#327](#327), [#326](#326), and [#325](#325). We have updated the `execute` and `fetch` methods to handle exceptions more gracefully and changed exception handling from catching `Exception` to catching `BaseException` for more comprehensive error handling. Additionally, we have updated the `pyproject.toml` file to use a newer version of the `databricks-labs-pytester` package (0.2.1 to 0.5.0) which may have contributed to the resolution of these issues. Furthermore, the `test_backends.py` file has been updated to improve the readability and user-friendliness of the test output for the functions testing if a `NotFound`, `BadRequest`, or `Unknown` exception is raised when executing and fetching statements. The `test_runtime_backend_use_statements` function has also been updated to print `PASSED` or `FAILED` instead of returning those values. These changes enhance the robustness of the exception handling mechanism in the `RuntimeBackend` class and update related unit tests.

Dependency updates:

 * Bump codecov/codecov-action from 4 to 5 ([#319](#319)).
@nfx nfx mentioned this pull request Nov 15, 2024
nfx added a commit that referenced this pull request Nov 15, 2024
* Added nightly tests run at 4:45am UTC
([#318](#318)). A new
nightly workflow has been added to the codebase, designed to automate a
series of jobs every day at 4:45am UTC on the `larger` environment. The
workflow includes permissions for writing id-tokens, accessing issues,
reading contents and pull-requests. It checks out the code with a full
fetch-depth, installs Python 3.10, and uses hatch 1.9.4. The key step in
this workflow is the execution of nightly tests using the
databrickslabs/sandbox/acceptance action, which creates issues if
necessary. The workflow utilizes several secrets, including VAULT_URI,
GITHUB_TOKEN, ARM_CLIENT_ID, and ARM_TENANT_ID, and sets the
TEST_NIGHTLY environment variable to true. Additionally, the workflow is
part of a concurrency group called "single-acceptance-job-per-repo",
ensuring that only one acceptance job runs at a time per repository.
* Bump codecov/codecov-action from 4 to 5
([#319](#319)). In this
version update, the Codecov GitHub Action has been upgraded from 4 to 5,
bringing improved functionality and new features. This new version
utilizes the Codecov Wrapper to encapsulate the CLI, enabling faster
updates. Additionally, an opt-out feature has been introduced for tokens
in public repositories, allowing contributors and other members to
upload coverage reports without requiring access to the Codecov token.
The upgrade also includes changes to the arguments: `file` is now
deprecated and replaced with `files`, and `plugin` is deprecated and
replaced with `plugins`. New arguments have been added, including
`binary`, `gcov_args`, `gcov_executable`, `gcov_ignore`, `gcov_include`,
`report_type`, `skip_validation`, and `swift_project`. Comprehensive
documentation on these changes can be found in the release notes and
changelog.
* Fixed `RuntimeBackend` exception handling
([#328](#328)). In this
release, we have made significant improvements to the exception handling
in the `RuntimeBackend` component, addressing issues reported in tickets
[#328](#328),
[#327](#327),
[#326](#326), and
[#325](#325). We have
updated the `execute` and `fetch` methods to handle exceptions more
gracefully and changed exception handling from catching `Exception` to
catching `BaseException` for more comprehensive error handling.
Additionally, we have updated the `pyproject.toml` file to use a newer
version of the `databricks-labs-pytester` package (0.2.1 to 0.5.0) which
may have contributed to the resolution of these issues. Furthermore, the
`test_backends.py` file has been updated to improve the readability and
user-friendliness of the test output for the functions testing if a
`NotFound`, `BadRequest`, or `Unknown` exception is raised when
executing and fetching statements. The
`test_runtime_backend_use_statements` function has also been updated to
print `PASSED` or `FAILED` instead of returning those values. These
changes enhance the robustness of the exception handling mechanism in
the `RuntimeBackend` class and update related unit tests.

Dependency updates:

* Bump codecov/codecov-action from 4 to 5
([#319](#319)).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment