Skip to content

Conversation

@alvarowolfx
Copy link
Contributor

Found an issue when reading a query and unmarshalling to a user defined struct. See code sample:

type UserStruct struct {
    Name string
    Number  int
    State string
}

// Enable Storage API usage for fetching data
err = client.EnableStorageReadClient(ctx)
if err != nil {
    // TODO: Handle error.
}

sql := fmt.Sprintf(`SELECT name, number, state FROM %s WHERE state = "CA"`, `bigquery-public-data.usa_names.usa_1910_current`)

q := client.Query(sql)
it, err := q.Read(ctx)
if err != nil {
    // TODO: Handle error.
}
for {
    var s UserStruct
    err := it.Next(&s)
    if err == iterator.Done {
        break
    }
    if err != nil {
        // TODO: Handle error.
    }
    fmt.Println(s)
}
// Output 
// { 0 }
// { 0 }
// { 0 }

The target struct was returning with it's zero value, not being filled with data.

@alvarowolfx alvarowolfx requested a review from shollyman March 31, 2023 23:17
@alvarowolfx alvarowolfx requested review from a team as code owners March 31, 2023 23:17
@product-auto-label product-auto-label bot added the size: s Pull request size is small. label Mar 31, 2023
@alvarowolfx alvarowolfx changed the title fix: RowIterator.Schema not filled when using Storage Read API fix(bigquery): RowIterator.Schema not filled when using Storage Read API Mar 31, 2023
@alvarowolfx alvarowolfx added the api: bigquery Issues related to the BigQuery API. label Mar 31, 2023
@alvarowolfx alvarowolfx self-assigned this Mar 31, 2023
Copy link
Contributor

@shollyman shollyman left a comment

Choose a reason for hiding this comment

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

Generally seems fine, one question around the test query driving the test.

@product-auto-label product-auto-label bot added the stale: old Pull request is old and needs attention. label May 1, 2023
@product-auto-label product-auto-label bot added stale: extraold Pull request is critically old and needs prioritization. and removed stale: old Pull request is old and needs attention. labels May 31, 2023
@product-auto-label product-auto-label bot added size: m Pull request size is medium. and removed size: s Pull request size is small. labels Jun 1, 2023
Copy link
Contributor

@shollyman shollyman left a comment

Choose a reason for hiding this comment

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

ship it!

@alvarowolfx alvarowolfx merged commit 31040e8 into googleapis:main Jun 2, 2023
gcf-merge-on-green bot pushed a commit that referenced this pull request Jun 26, 2023
🤖 I have created a release *beep* *boop*
---


## [1.52.0](https://togithub.com/googleapis/google-cloud-go/compare/bigquery/v1.51.2...bigquery/v1.52.0) (2023-06-23)


### Features

* **bigquery/storage:** Add estimated physical file sizes to ReadAPI v1 ([94ea341](https://togithub.com/googleapis/google-cloud-go/commit/94ea3410e233db6040a7cb0a931948f1e3bb4c9a))
* **bigquery/storage:** Add table sampling to ReadAPI v1 ([ca94e27](https://togithub.com/googleapis/google-cloud-go/commit/ca94e2724f9e2610b46aefd0a3b5ddc06102e91b))
* **bigquery:** Support for tables primary and foreign keys ([#8055](https://togithub.com/googleapis/google-cloud-go/issues/8055)) ([93d6a1a](https://togithub.com/googleapis/google-cloud-go/commit/93d6a1a1a3bde8d3519acc2b7e77bf8b7ba1678a))
* **bigquery:** Update all direct dependencies ([b340d03](https://togithub.com/googleapis/google-cloud-go/commit/b340d030f2b52a4ce48846ce63984b28583abde6))


### Bug Fixes

* **bigquery/storage/managedwriter:** Correct reconnection logic ([#8164](https://togithub.com/googleapis/google-cloud-go/issues/8164)) ([a67d53d](https://togithub.com/googleapis/google-cloud-go/commit/a67d53ddf13b7d382d4c7856cafb068919021912))
* **bigquery:** REST query UpdateMask bug ([df52820](https://togithub.com/googleapis/google-cloud-go/commit/df52820b0e7721954809a8aa8700b93c5662dc9b))
* **bigquery:** RowIterator.Schema not filled when using Storage Read API ([#7671](https://togithub.com/googleapis/google-cloud-go/issues/7671)) ([31040e8](https://togithub.com/googleapis/google-cloud-go/commit/31040e8a7989b143c0c3c3f3e31c4a9dfbba8094))

---
This PR was generated with [Release Please](https://togithub.com/googleapis/release-please). See [documentation](https://togithub.com/googleapis/release-please#release-please).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api: bigquery Issues related to the BigQuery API. size: m Pull request size is medium. stale: extraold Pull request is critically old and needs prioritization.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants