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

docstore/all: Fix offset handling and extend test coverage #3409

Merged
merged 4 commits into from
Jun 3, 2024

Conversation

bartventer
Copy link
Contributor

This PR is a continuation of PR #3408 and includes additional changes:

  • Fixes offset handling for RunGetQuery in docstore/memdocstore.
  • Increases test coverage for documentIterator.Next in docstore/awsdynamodb. I'm not sure how realistic these test cases are, I can remove them if they don't add value.
  • Extends test coverage for Limit/Offset related queries in docstore.

I also generated new replay files for awsdynamodb and gcpfirestore.

vangent and others added 4 commits March 22, 2024 01:03
…to AWS returns an empty set, but there's still more data
This commit adjusts `RunGetQuery` to return an empty slice when the offset is greater than or equal to the result set length, previously this was not handled correctly.
…or.Next

This commit enhances the test coverage for `documentIterator.Next` in `docstore/awsdynamodb/query_test.go`.

Related: google#3408
…ries

- This commit extends the test coverage for Offset and Limit related queries in `docstore/drivertest/drivertest.go`.
- Added additional test cases for `Limit` and `Offset` to `TestInvalidQuery` in `docstore/query_test.go`.

Related: google#3408
Copy link

codecov bot commented Mar 22, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 73.26%. Comparing base (be1b4ae) to head (9d139c9).

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #3409      +/-   ##
==========================================
+ Coverage   73.12%   73.26%   +0.13%     
==========================================
  Files         113      113              
  Lines       14864    14869       +5     
==========================================
+ Hits        10870    10894      +24     
+ Misses       3219     3207      -12     
+ Partials      775      768       -7     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@vangent vangent merged commit f3f3e19 into google:master Jun 3, 2024
5 checks passed
renovate bot referenced this pull request in open-feature/flagd Sep 11, 2024
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [gocloud.dev](https://redirect.github.com/google/go-cloud) | `v0.37.0`
-> `v0.39.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/gocloud.dev/v0.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/gocloud.dev/v0.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/gocloud.dev/v0.37.0/v0.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/gocloud.dev/v0.37.0/v0.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>google/go-cloud (gocloud.dev)</summary>

###
[`v0.39.0`](https://redirect.github.com/google/go-cloud/releases/tag/v0.39.0)

[Compare
Source](https://redirect.github.com/google/go-cloud/compare/v0.38.0...v0.39.0)

#### BREAKING CHANGE (AWS only, V1 vs V2 SDK)

Context: AWS has [announced maintenance
mode](https://aws.amazon.com/blogs/developer/announcing-end-of-support-for-aws-sdk-for-go-v1-on-july-31-2025/)
for the Go V1 SDK.

Go CDK has changed the default SDK for URLs across all modules except
`docstore/awsdynamodb` to be V2 (previously you needed to add
`awssdk=v2` to the URL to get V2). Most URLs should continue to work,
but in some cases you may need to add `awssdk=v1` to force V1
explicitly.

Also, concrete type constructors (e.g., `OpenBucket`) for V1 (again,
except `docstore/awsdynamodb`) have been marked deprecated; please
migrate to using the V2 versions (e.g., `OpenBucketV2`).

Our tentative plan is to remove support for V1 in early 2025; please
[file a
bug](https://redirect.github.com/google/go-cloud/issues/new/choose) if
you have concerns about that.

#### What's Changed

- pubsub: Make batch request results independent by
[@&#8203;mitsos1os](https://redirect.github.com/mitsos1os) in
[https://github.com/google/go-cloud/pull/3457](https://redirect.github.com/google/go-cloud/pull/3457)
- docstore/all: Add support for boolean filter by
[@&#8203;ybourgery](https://redirect.github.com/ybourgery) in
[https://github.com/google/go-cloud/pull/3464](https://redirect.github.com/google/go-cloud/pull/3464)
- aws/all: Mark V1 constructors deprecated. by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[https://github.com/google/go-cloud/pull/3466](https://redirect.github.com/google/go-cloud/pull/3466)
- aws/all: Change the default for AWS URLs from V1 to V2. by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[https://github.com/google/go-cloud/pull/3465](https://redirect.github.com/google/go-cloud/pull/3465)
- all: update to go version 1.23 by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[https://github.com/google/go-cloud/pull/3467](https://redirect.github.com/google/go-cloud/pull/3467)

#### New Contributors

- [@&#8203;mitsos1os](https://redirect.github.com/mitsos1os) made their
first contribution in
[https://github.com/google/go-cloud/pull/3457](https://redirect.github.com/google/go-cloud/pull/3457)
- [@&#8203;dependabot](https://redirect.github.com/dependabot) made
their first contribution in
[https://github.com/google/go-cloud/pull/3448](https://redirect.github.com/google/go-cloud/pull/3448)

**Full Changelog**:
google/go-cloud@v0.38.0...v0.39.0

###
[`v0.38.0`](https://redirect.github.com/google/go-cloud/releases/tag/v0.38.0)

[Compare
Source](https://redirect.github.com/google/go-cloud/compare/v0.37.0...v0.38.0)

**blob**

- **all**: Fix panics if reader recreation fails after Seek by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[https://github.com/google/go-cloud/pull/3425](https://redirect.github.com/google/go-cloud/pull/3425)
- **all**: Convert errors in `Open()` into appropriate fs errors by
[@&#8203;milescrabill](https://redirect.github.com/milescrabill) in
[https://github.com/google/go-cloud/pull/3443](https://redirect.github.com/google/go-cloud/pull/3443)
- **s3blob**: Fix Copy to work with keys that need escaping by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[https://github.com/google/go-cloud/pull/3403](https://redirect.github.com/google/go-cloud/pull/3403)
- **azureblob**: Do not panic if Content-Length and Content-Range are
missing by [@&#8203;chancez](https://redirect.github.com/chancez) in
[https://github.com/google/go-cloud/pull/3445](https://redirect.github.com/google/go-cloud/pull/3445)
- **fileblob**: Allow customization of the FileMode by
[@&#8203;vangent](https://redirect.github.com/vangent) in
[https://github.com/google/go-cloud/pull/3426](https://redirect.github.com/google/go-cloud/pull/3426)

**pubsub**

- **awssnssqs**: Add support for setting FIFO message metadata by
[@&#8203;bartventer](https://redirect.github.com/bartventer) in
[https://github.com/google/go-cloud/pull/3435](https://redirect.github.com/google/go-cloud/pull/3435)
- **kafkapubsub**: Configuring key_name when OpenTopicURL by
[@&#8203;ssetin](https://redirect.github.com/ssetin) in
[https://github.com/google/go-cloud/pull/3404](https://redirect.github.com/google/go-cloud/pull/3404)
- **rabbitpubsub**: Add query string set the qos prefetch count by
[@&#8203;peczenyj](https://redirect.github.com/peczenyj) in
[https://github.com/google/go-cloud/pull/3431](https://redirect.github.com/google/go-cloud/pull/3431)
- **rabbitpubsub**: Add query string to set the routing key from
metadata by [@&#8203;peczenyj](https://redirect.github.com/peczenyj) in
[https://github.com/google/go-cloud/pull/3433](https://redirect.github.com/google/go-cloud/pull/3433)
- **rabbitpubsub**: Wrap pubsub rabbitmq errors by
[@&#8203;peczenyj](https://redirect.github.com/peczenyj) in
[https://github.com/google/go-cloud/pull/3437](https://redirect.github.com/google/go-cloud/pull/3437)

**docstore**

- **all**: Fix offset handling and extend test coverage by
[@&#8203;bartventer](https://redirect.github.com/bartventer) in
[https://github.com/google/go-cloud/pull/3409](https://redirect.github.com/google/go-cloud/pull/3409)
- **awsdynamodb**: Ensure Next returns EOF when no more items by
[@&#8203;bartventer](https://redirect.github.com/bartventer) in
[https://github.com/google/go-cloud/pull/3406](https://redirect.github.com/google/go-cloud/pull/3406)
- **mongodocstore**: Update Mongo dialer when MONGO_SERVER_URL rotates
by [@&#8203;concaf](https://redirect.github.com/concaf) in
[https://github.com/google/go-cloud/pull/3429](https://redirect.github.com/google/go-cloud/pull/3429)

#### New Contributors

- [@&#8203;ssetin](https://redirect.github.com/ssetin) made their first
contribution in
[https://github.com/google/go-cloud/pull/3404](https://redirect.github.com/google/go-cloud/pull/3404)
- [@&#8203;concaf](https://redirect.github.com/concaf) made their first
contribution in
[https://github.com/google/go-cloud/pull/3429](https://redirect.github.com/google/go-cloud/pull/3429)
- [@&#8203;peczenyj](https://redirect.github.com/peczenyj) made their
first contribution in
[https://github.com/google/go-cloud/pull/3431](https://redirect.github.com/google/go-cloud/pull/3431)
- [@&#8203;chancez](https://redirect.github.com/chancez) made their
first contribution in
[https://github.com/google/go-cloud/pull/3445](https://redirect.github.com/google/go-cloud/pull/3445)
- [@&#8203;milescrabill](https://redirect.github.com/milescrabill) made
their first contribution in
[https://github.com/google/go-cloud/pull/3443](https://redirect.github.com/google/go-cloud/pull/3443)
- [@&#8203;samlaf](https://redirect.github.com/samlaf) made their first
contribution in
[https://github.com/google/go-cloud/pull/3450](https://redirect.github.com/google/go-cloud/pull/3450)

**Full Changelog**:
google/go-cloud@v0.37.0...v0.38.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/open-feature/flagd).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC43NC4xIiwidXBkYXRlZEluVmVyIjoiMzguNzQuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
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.

2 participants