FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

fix: error using empty array of structs parameter by plamut · Pull Request #474 · googleapis/python-bigquery · GitHub

This repository was archived by the owner on Mar 6, 2026. It is now read-only.
/ python-bigquery Public archive

fix: error using empty array of structs parameter - #474

Merged
tswast merged 15 commits into
googleapis:masterfrom
plamut:iss-463
Feb 24, 2021
Merged

fix: error using empty array of structs parameter#474
tswast merged 15 commits into
googleapis:masterfrom
plamut:iss-463

Conversation

plamut commented Jan 19, 2021
edited
Loading

Copy link
Copy Markdown
Contributor

Fixes #463.

This PR adds an optional type info parameter to ArrayQueryParameter so that array query parameters with STRUCT items can be used in queries even if they are empty. This is a solution similar to the one used in e.g. the Ruby client.

(for non-struct items the type can always be determined by using the array_type argument)

PR checklist:

  • Make sure to open an issue as a bug/issue before writing your code! That way we can discuss the change, evaluate designs, and agree on the general idea
  • Ensure the tests and linter pass
  • Code coverage does not decrease (if any source code was changed)
  • Appropriate docs were updated (if necessary)

plamut requested review from a team and stephaniewang526 and removed request for a team January 19, 2021 12:43
product-auto-label Bot added the api: bigquery Issues related to the googleapis/python-bigquery API. label Jan 19, 2021
google-cla Bot added the cla: yes This human has signed the Contributor License Agreement. label Jan 19, 2021
plamut added the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Jan 19, 2021
yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Jan 19, 2021
Comment thread google/cloud/bigquery/query.py Outdated
plamut requested a review from tswast February 4, 2021 12:03
Comment thread google/cloud/bigquery/query.py Outdated
raise NotImplementedError


class ScalarQueryParameterType(_AbstractQueryParameterType):

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I don't think we should do this in this PR, but I'm tempted to ask for an additional set of constants in google.cloud.bigquery.enums that has all the scalar types defined as objects (without name & description). I imagine that will be useful when we eventually create an "array of structs query parameter" code sample.

plamut Feb 20, 2021
edited
Loading

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Sounds reasonable, let's do it in a follow-up PR. 👍

Edit: It's actually very straightforward (if I understood it correctly, that is), thus added that in an extra commit.

Comment thread google/cloud/bigquery/query.py Outdated
Comment thread google/cloud/bigquery/query.py Outdated
plamut requested a review from tswast February 20, 2021 12:15
DATETIME = "DATETIME"


class SqlParameterScalarTypes:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Beautiful!

tswast merged commit c1d15f4 into googleapis:master Feb 24, 2021
gcf-merge-on-green Bot pushed a commit that referenced this pull request Feb 25, 2021
🤖 I have created a release \*beep\* \*boop\* 
---
## [2.10.0](https://www.github.com/googleapis/python-bigquery/compare/v2.9.0...v2.10.0) (2021-02-25)


### Features

* add BIGNUMERIC support ([#527](https://www.github.com/googleapis/python-bigquery/issues/527)) ([cc3394f](https://www.github.com/googleapis/python-bigquery/commit/cc3394f80934419eb00c2029bb81c92a696e7d88))


### Bug Fixes

* error using empty array of structs parameter ([#474](https://www.github.com/googleapis/python-bigquery/issues/474)) ([c1d15f4](https://www.github.com/googleapis/python-bigquery/commit/c1d15f4e5da4b7e10c00afffd59a5c7f3ded027a))
* QueryJob.exception() *returns* the errors, not raises them ([#467](https://www.github.com/googleapis/python-bigquery/issues/467)) ([d763279](https://www.github.com/googleapis/python-bigquery/commit/d7632799769248b09a8558ba18f5025ebdd9675a))


### Documentation

* **bigquery:** Add alternative approach to setting credentials ([#517](https://www.github.com/googleapis/python-bigquery/issues/517)) ([60fbf28](https://www.github.com/googleapis/python-bigquery/commit/60fbf287b0d34d5db2e61cce7a5b42735ed43d0e))
* explain retry behavior for DONE jobs ([#532](https://www.github.com/googleapis/python-bigquery/issues/532)) ([696c443](https://www.github.com/googleapis/python-bigquery/commit/696c443f0a6740be0767e12b706a7771bc1460c3))
---


This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
plamut deleted the iss-463 branch February 26, 2021 07:49
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

api: bigquery Issues related to the googleapis/python-bigquery API. cla: yes This human has signed the Contributor License Agreement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support arrays of record/structs as query parameters

3 participants


Back | FazBrowse Home | New Git URL