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

fix(Transactions): Fix resource consumption on empty write transaction #2018

Merged
merged 1 commit into from
Oct 13, 2023

Conversation

Zach-Johnson
Copy link
Contributor

Problem

If a write transaction is opened without doing any updates, e.g.

txn := db.NewTransaction(true)
txn.Commit()

the read mark is never marked done, because txn.Discard has not been called and neither has the commit logic because of the early return in Commit():

if len(txn.pendingWrites) == 0 {
    return nil // Nothing to do.
}

This causes unbounded storage growth until the service is restarted. The watermark process in y/watermark.go never receives a mark for that transaction, and so never updates the DoneUntil. This value is used in levels.go for compaction to determine the discardTS value, and since it never updates, compaction can never occur.

Solution

The solution here is to call txn.Discard in the case when there are no writes on the transaction. This marks the read as done and allows the watermark process to properly update.

@netlify
Copy link

netlify bot commented Oct 12, 2023

Deploy Preview for badger-docs canceled.

Name Link
🔨 Latest commit 2d5b7bd
🔍 Latest deploy log https://app.netlify.com/sites/badger-docs/deploys/65284b170dc9c800086d2143

@harshil-goel
Copy link
Contributor

Great find!

@Zach-Johnson
Copy link
Contributor Author

Great find!

Thanks @harshil-goel - is it possible to get a release cut for this sometime soon?

@harshil-goel
Copy link
Contributor

If all the tests pass, it will be a part of the next release

@mangalaman93 mangalaman93 merged commit 1741e47 into dgraph-io:main Oct 13, 2023
11 checks passed
mangalaman93 pushed a commit that referenced this pull request Dec 18, 2023
## Problems
* Transactions with empty `pendingWrites` were never discarded(and
marked as done) for `CommitWith`
* This is similar to #2018,
which solved the same problem for `Commit`, but not for `CommitWith`
* The `CommitWith` is used by `WriteBatch`, so flushing an empty batch
never discarded the inner shadowed transaction, causing a multitude of
issues.

## Solution
Make sure `Discard` is called for `CommitWith` when `pendingWrites` are
empty. The existing unit test is updated to assert that.
mYmNeo added a commit to mYmNeo/badger that referenced this pull request Jan 25, 2024
charithe referenced this pull request in cerbos/cerbos Sep 2, 2024
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type |
Update |
|---|---|---|---|---|---|---|---|
|
[github.com/Masterminds/sprig/v3](https://github.com/Masterminds/sprig)
| `v3.2.3` -> `v3.3.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fMasterminds%2fsprig%2fv3/v3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fMasterminds%2fsprig%2fv3/v3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fMasterminds%2fsprig%2fv3/v3.2.3/v3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fMasterminds%2fsprig%2fv3/v3.2.3/v3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | minor |
|
[github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2)
| `v1.27.30` -> `v1.27.31` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2faws%2faws-sdk-go-v2%2fconfig/v1.27.31?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2faws%2faws-sdk-go-v2%2fconfig/v1.27.31?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2faws%2faws-sdk-go-v2%2fconfig/v1.27.30/v1.27.31?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2faws%2faws-sdk-go-v2%2fconfig/v1.27.30/v1.27.31?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | patch |
| [github.com/bufbuild/buf](https://github.com/bufbuild/buf) |
`v1.38.0` -> `v1.39.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fbufbuild%2fbuf/v1.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fbufbuild%2fbuf/v1.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fbufbuild%2fbuf/v1.38.0/v1.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fbufbuild%2fbuf/v1.38.0/v1.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | minor |
|
[github.com/bufbuild/protovalidate-go](https://github.com/bufbuild/protovalidate-go)
| `v0.6.4` -> `v0.6.5` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fbufbuild%2fprotovalidate-go/v0.6.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fbufbuild%2fprotovalidate-go/v0.6.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fbufbuild%2fprotovalidate-go/v0.6.4/v0.6.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fbufbuild%2fprotovalidate-go/v0.6.4/v0.6.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | patch |
|
[github.com/cerbos/cloud-api](https://github.com/cerbos/cloud-api)
| `v0.1.23` -> `v0.1.24` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fcerbos%2fcloud-api/v0.1.24?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fcerbos%2fcloud-api/v0.1.24?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fcerbos%2fcloud-api/v0.1.23/v0.1.24?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fcerbos%2fcloud-api/v0.1.23/v0.1.24?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | patch |
|
[github.com/dadav/helm-schema](https://github.com/dadav/helm-schema)
| `4e067df` -> `f205574` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fdadav%2fhelm-schema/v0.0.0-20240831174639-f2055746722e?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fdadav%2fhelm-schema/v0.0.0-20240831174639-f2055746722e?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fdadav%2fhelm-schema/v0.0.0-20240817173722-4e067df209ea/v0.0.0-20240831174639-f2055746722e?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fdadav%2fhelm-schema/v0.0.0-20240817173722-4e067df209ea/v0.0.0-20240831174639-f2055746722e?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | digest |
|
[github.com/dgraph-io/badger/v4](https://github.com/dgraph-io/badger)
| `v4.2.0` -> `v4.3.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fdgraph-io%2fbadger%2fv4/v4.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fdgraph-io%2fbadger%2fv4/v4.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fdgraph-io%2fbadger%2fv4/v4.2.0/v4.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fdgraph-io%2fbadger%2fv4/v4.2.0/v4.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | minor |
|
[github.com/fergusstrange/embedded-postgres](https://github.com/fergusstrange/embedded-postgres)
| `v1.28.0` -> `v1.29.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2ffergusstrange%2fembedded-postgres/v1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2ffergusstrange%2fembedded-postgres/v1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2ffergusstrange%2fembedded-postgres/v1.28.0/v1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2ffergusstrange%2fembedded-postgres/v1.28.0/v1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | minor |
| [github.com/rs/cors](https://github.com/rs/cors) | `v1.11.0`
-> `v1.11.1` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2frs%2fcors/v1.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2frs%2fcors/v1.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2frs%2fcors/v1.11.0/v1.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2frs%2fcors/v1.11.0/v1.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | patch |
|
[google.golang.org/genproto/googleapis/api](https://github.com/googleapis/go-genproto)
| `4ba0660` -> `7e3bb23` |
[![age](https://developer.mend.io/api/mc/badges/age/go/google.golang.org%2fgenproto%2fgoogleapis%2fapi/v0.0.0-20240827150818-7e3bb234dfed?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/google.golang.org%2fgenproto%2fgoogleapis%2fapi/v0.0.0-20240827150818-7e3bb234dfed?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/google.golang.org%2fgenproto%2fgoogleapis%2fapi/v0.0.0-20240823204242-4ba0660f739c/v0.0.0-20240827150818-7e3bb234dfed?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/google.golang.org%2fgenproto%2fgoogleapis%2fapi/v0.0.0-20240823204242-4ba0660f739c/v0.0.0-20240827150818-7e3bb234dfed?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | digest |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) |
`v1.65.0` -> `v1.66.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/google.golang.org%2fgrpc/v1.66.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/google.golang.org%2fgrpc/v1.66.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/google.golang.org%2fgrpc/v1.65.0/v1.66.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/google.golang.org%2fgrpc/v1.65.0/v1.66.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
| require | minor |

---

### Release Notes

<details>
<summary>Masterminds/sprig (github.com/Masterminds/sprig/v3)</summary>

###
[`v3.3.0`](https://github.com/Masterminds/sprig/releases/tag/v3.3.0)

[Compare
Source](https://github.com/Masterminds/sprig/compare/v3.2.3...v3.3.0)

#### What's Changed

- Updating the Go versions used in testing by
[@&#8203;mattfarina](https://github.com/mattfarina) in
[https://github.com/Masterminds/sprig/pull/405](https://github.com/Masterminds/sprig/pull/405)
- Change intial to initial. by
[@&#8203;chrishalbert](https://github.com/chrishalbert) in
[https://github.com/Masterminds/sprig/pull/391](https://github.com/Masterminds/sprig/pull/391)
- Updating dependencies by
[@&#8203;mattfarina](https://github.com/mattfarina) in
[https://github.com/Masterminds/sprig/pull/404](https://github.com/Masterminds/sprig/pull/404)
- correct value by
[@&#8203;jheyduk](https://github.com/jheyduk) in
[https://github.com/Masterminds/sprig/pull/376](https://github.com/Masterminds/sprig/pull/376)
- Updating location of mergo by
[@&#8203;mattfarina](https://github.com/mattfarina) in
[https://github.com/Masterminds/sprig/pull/406](https://github.com/Masterminds/sprig/pull/406)
- feature: added sha512sum function by
[@&#8203;itzik-elayev](https://github.com/itzik-elayev) in
[https://github.com/Masterminds/sprig/pull/400](https://github.com/Masterminds/sprig/pull/400)
- docs: Add missing link to url functions by
[@&#8203;carlpett](https://github.com/carlpett) in
[https://github.com/Masterminds/sprig/pull/375](https://github.com/Masterminds/sprig/pull/375)
- Update doc.go by [@&#8203;chey](https://github.com/chey) in
[https://github.com/Masterminds/sprig/pull/369](https://github.com/Masterminds/sprig/pull/369)
- Update mathf.md by
[@&#8203;zzhu41](https://github.com/zzhu41) in
[https://github.com/Masterminds/sprig/pull/290](https://github.com/Masterminds/sprig/pull/290)
- Removing duplicate documentation by
[@&#8203;mattfarina](https://github.com/mattfarina) in
[https://github.com/Masterminds/sprig/pull/407](https://github.com/Masterminds/sprig/pull/407)
- Updating the changelog for the 3.3.0 release by
[@&#8203;mattfarina](https://github.com/mattfarina) in
[https://github.com/Masterminds/sprig/pull/408](https://github.com/Masterminds/sprig/pull/408)

#### New Contributors

- [@&#8203;chrishalbert](https://github.com/chrishalbert) made
their first contribution in
[https://github.com/Masterminds/sprig/pull/391](https://github.com/Masterminds/sprig/pull/391)
- [@&#8203;jheyduk](https://github.com/jheyduk) made their
first contribution in
[https://github.com/Masterminds/sprig/pull/376](https://github.com/Masterminds/sprig/pull/376)
- [@&#8203;itzik-elayev](https://github.com/itzik-elayev) made
their first contribution in
[https://github.com/Masterminds/sprig/pull/400](https://github.com/Masterminds/sprig/pull/400)
- [@&#8203;carlpett](https://github.com/carlpett) made their
first contribution in
[https://github.com/Masterminds/sprig/pull/375](https://github.com/Masterminds/sprig/pull/375)
- [@&#8203;chey](https://github.com/chey) made their first
contribution in
[https://github.com/Masterminds/sprig/pull/369](https://github.com/Masterminds/sprig/pull/369)
- [@&#8203;zzhu41](https://github.com/zzhu41) made their first
contribution in
[https://github.com/Masterminds/sprig/pull/290](https://github.com/Masterminds/sprig/pull/290)

**Full Changelog**:
Masterminds/sprig@v3.2.3...v3.3.0

</details>

<details>
<summary>bufbuild/buf (github.com/bufbuild/buf)</summary>

###
[`v1.39.0`](https://github.com/bufbuild/buf/blob/HEAD/CHANGELOG.md#v1390---2024-08-27)

[Compare
Source](https://github.com/bufbuild/buf/compare/v1.38.0...v1.39.0)

-   Fix git input handling of relative HEAD refs without branch names.
- Add `includes` key to module configurations in v2 `buf.yaml`,
accepting a list of directories.
- If `includes` is specified, a proto file is considered in the module
only if it is in one of the
        directories specified.
- If both `includes` and `excludes` keys are specified for a module, a
proto file is considered
part of this module if it is contained in any of the include paths and
not in any of the exclude
        paths.
- Allow multiple module configurations in the same v2 `buf.yaml` to have
the same directory path.

</details>

<details>
<summary>bufbuild/protovalidate-go
(github.com/bufbuild/protovalidate-go)</summary>

###
[`v0.6.5`](https://github.com/bufbuild/protovalidate-go/releases/tag/v0.6.5)

[Compare
Source](https://github.com/bufbuild/protovalidate-go/compare/v0.6.4...v0.6.5)

#### What's Changed

- Add `buf.gen.yaml` v2 schema example by
[@&#8203;milas](https://github.com/milas) in
[https://github.com/bufbuild/protovalidate-go/pull/138](https://github.com/bufbuild/protovalidate-go/pull/138)
- Upgrade to support Go 1.23 by
[@&#8203;rodaine](https://github.com/rodaine) in
[https://github.com/bufbuild/protovalidate-go/pull/139](https://github.com/bufbuild/protovalidate-go/pull/139)
- Remove Go 1.20 support by
[@&#8203;rodaine](https://github.com/rodaine) in
[https://github.com/bufbuild/protovalidate-go/pull/140](https://github.com/bufbuild/protovalidate-go/pull/140)
- Bugfix: avoid spurious tautology pruning when dealing with certain
recursive messages by
[@&#8203;rodaine](https://github.com/rodaine) in
[https://github.com/bufbuild/protovalidate-go/pull/142](https://github.com/bufbuild/protovalidate-go/pull/142)

#### New Contributors

- [@&#8203;milas](https://github.com/milas) made their first
contribution in
[https://github.com/bufbuild/protovalidate-go/pull/138](https://github.com/bufbuild/protovalidate-go/pull/138)

**Full Changelog**:
bufbuild/protovalidate-go@v0.6.4...v0.6.5

</details>

<details>
<summary>cerbos/cloud-api (github.com/cerbos/cloud-api)</summary>

###
[`v0.1.24`](https://github.com/cerbos/cloud-api/releases/tag/v0.1.24)

[Compare
Source](https://github.com/cerbos/cloud-api/compare/v0.1.23...v0.1.24)


[v0.1.24](https://github.com/cerbos/cloud-api/releases/tag/v0.1.24)

</details>

<details>
<summary>dgraph-io/badger (github.com/dgraph-io/badger/v4)</summary>

###
[`v4.3.0`](https://github.com/dgraph-io/badger/releases/tag/v4.3.0):
Badger v4.3.0

[Compare
Source](https://github.com/dgraph-io/badger/compare/v4.2.0...v4.3.0)

#### What's Changed

Fixes:

- chore(changelog): add a missed entry in CHANGELOG for v4.2.0 by
[@&#8203;mangalaman93](https://github.com/mangalaman93) in
[https://github.com/dgraph-io/badger/pull/1988](https://github.com/dgraph-io/badger/pull/1988)
- update README with project KVS using badger by
[@&#8203;tauraamui](https://github.com/tauraamui) in
[https://github.com/dgraph-io/badger/pull/1989](https://github.com/dgraph-io/badger/pull/1989)
- fix edge case for watermark when index is zero by
[@&#8203;mangalaman93](https://github.com/mangalaman93) in
[https://github.com/dgraph-io/badger/pull/1999](https://github.com/dgraph-io/badger/pull/1999)
- upgrade spf13/cobra to version v1.7.0 by
[@&#8203;mangalaman93](https://github.com/mangalaman93) in
[https://github.com/dgraph-io/badger/pull/2001](https://github.com/dgraph-io/badger/pull/2001)
- chore: update readme by
[@&#8203;joshua-goldstein](https://github.com/joshua-goldstein)
in
[https://github.com/dgraph-io/badger/pull/2011](https://github.com/dgraph-io/badger/pull/2011)
- perf: upgrade compress package test and benchmark. by
[@&#8203;siddhant2001](https://github.com/siddhant2001) in
[https://github.com/dgraph-io/badger/pull/2009](https://github.com/dgraph-io/badger/pull/2009)
- fix(Transactions): Fix resource consumption on empty write transaction
by [@&#8203;Zach-Johnson](https://github.com/Zach-Johnson) in
[https://github.com/dgraph-io/badger/pull/2018](https://github.com/dgraph-io/badger/pull/2018)
- chore(deps): bump golang.org/x/net from 0.7.0 to 0.17.0 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/dgraph-io/badger/pull/2017](https://github.com/dgraph-io/badger/pull/2017)
- perf(compactor): optimize allocations: use buffer for priorities by
[@&#8203;deff7](https://github.com/deff7) in
[https://github.com/dgraph-io/badger/pull/2006](https://github.com/dgraph-io/badger/pull/2006)
- fix(Transaction): discard empty transactions on CommitWith by
[@&#8203;Wondertan](https://github.com/Wondertan) in
[https://github.com/dgraph-io/badger/pull/2031](https://github.com/dgraph-io/badger/pull/2031)
- fix(levelHandler): use lock for levelHandler sort tables instead of
rlock by [@&#8203;xgzlucario](https://github.com/xgzlucario) in
[https://github.com/dgraph-io/badger/pull/2034](https://github.com/dgraph-io/badger/pull/2034)
- Docs: update README with project LLS using badger by
[@&#8203;Boc-chi-no](https://github.com/Boc-chi-no) in
[https://github.com/dgraph-io/badger/pull/2032](https://github.com/dgraph-io/badger/pull/2032)
- chore: MaxTableSize has been renamed to BaseTableSize by
[@&#8203;mitar](https://github.com/mitar) in
[https://github.com/dgraph-io/badger/pull/2038](https://github.com/dgraph-io/badger/pull/2038)
- Update CODEOWNERS by
[@&#8203;ryanfoxtyler](https://github.com/ryanfoxtyler) in
[https://github.com/dgraph-io/badger/pull/2043](https://github.com/dgraph-io/badger/pull/2043)
- Chore(): add Stale Action by
[@&#8203;ryanfoxtyler](https://github.com/ryanfoxtyler) in
[https://github.com/dgraph-io/badger/pull/2070](https://github.com/dgraph-io/badger/pull/2070)
- Update ristretto and refactor for use of generics by
[@&#8203;paralin](https://github.com/paralin) in
[https://github.com/dgraph-io/badger/pull/2047](https://github.com/dgraph-io/badger/pull/2047)
- chore: Remove obsolete comment by
[@&#8203;mitar](https://github.com/mitar) in
[https://github.com/dgraph-io/badger/pull/2039](https://github.com/dgraph-io/badger/pull/2039)
- chore(Docs): Update jQuery 3.2.1 to 3.7.1 by
[@&#8203;kokizzu](https://github.com/kokizzu) in
[https://github.com/dgraph-io/badger/pull/2023](https://github.com/dgraph-io/badger/pull/2023)
- chore(deps): bump the go_modules group with 3 updates by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/dgraph-io/badger/pull/2074](https://github.com/dgraph-io/badger/pull/2074)
- docs(): update docs path by
[@&#8203;ryanfoxtyler](https://github.com/ryanfoxtyler) in
[https://github.com/dgraph-io/badger/pull/2076](https://github.com/dgraph-io/badger/pull/2076)
- perf: fix operation in seek by
[@&#8203;harshil-goel](https://github.com/harshil-goel) in
[https://github.com/dgraph-io/badger/pull/2077](https://github.com/dgraph-io/badger/pull/2077)
- Add lakeFS to README.md by
[@&#8203;N-o-Z](https://github.com/N-o-Z) in
[https://github.com/dgraph-io/badger/pull/2078](https://github.com/dgraph-io/badger/pull/2078)
- chore(): add Dependabot by
[@&#8203;ryanfoxtyler](https://github.com/ryanfoxtyler) in
[https://github.com/dgraph-io/badger/pull/2080](https://github.com/dgraph-io/badger/pull/2080)
- chore(deps): bump golangci/golangci-lint-action from 4 to 6 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/dgraph-io/badger/pull/2083](https://github.com/dgraph-io/badger/pull/2083)
- chore(deps): bump actions/upload-artifact from 3 to 4 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/dgraph-io/badger/pull/2081](https://github.com/dgraph-io/badger/pull/2081)
- chore(deps): bump github/codeql-action from 2 to 3 by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/dgraph-io/badger/pull/2082](https://github.com/dgraph-io/badger/pull/2082)
- chore(deps): bump the minor group with 7 updates by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/dgraph-io/badger/pull/2089](https://github.com/dgraph-io/badger/pull/2089)
- Action Manager by
[@&#8203;madhu72](https://github.com/madhu72) in
[https://github.com/dgraph-io/badger/pull/2050](https://github.com/dgraph-io/badger/pull/2050)
- chore(deps): bump golang.org/x/sys from 0.23.0 to 0.24.0 in the minor
group by [@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/dgraph-io/badger/pull/2091](https://github.com/dgraph-io/badger/pull/2091)
- chore(deps): bump github.com/golang/protobuf from 1.5.3 to 1.5.4 in
the patch group by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/dgraph-io/badger/pull/2090](https://github.com/dgraph-io/badger/pull/2090)
- chore: fix some comments by
[@&#8203;dufucun](https://github.com/dufucun) in
[https://github.com/dgraph-io/badger/pull/2092](https://github.com/dgraph-io/badger/pull/2092)
- chore(deps): bump github.com/google/flatbuffers from 1.12.1 to
24.3.25+incompatible by
[@&#8203;dependabot](https://github.com/dependabot) in
[https://github.com/dgraph-io/badger/pull/2084](https://github.com/dgraph-io/badger/pull/2084)

CI:

- ci: change cron frequency to fix ghost jobs by
[@&#8203;joshua-goldstein](https://github.com/joshua-goldstein)
in
[https://github.com/dgraph-io/badger/pull/2010](https://github.com/dgraph-io/badger/pull/2010)
- fix(CI): Update to pull_request trigger by
[@&#8203;ryanfoxtyler](https://github.com/ryanfoxtyler) in
[https://github.com/dgraph-io/badger/pull/2056](https://github.com/dgraph-io/badger/pull/2056)
- ci/cd optimization by
[@&#8203;ryanfoxtyler](https://github.com/ryanfoxtyler) in
[https://github.com/dgraph-io/badger/pull/2051](https://github.com/dgraph-io/badger/pull/2051)
- fix(cd): fixed cd pipeline by
[@&#8203;harshil-goel](https://github.com/harshil-goel) in
[https://github.com/dgraph-io/badger/pull/2093](https://github.com/dgraph-io/badger/pull/2093)
- fix(cd): change name by
[@&#8203;harshil-goel](https://github.com/harshil-goel) in
[https://github.com/dgraph-io/badger/pull/2094](https://github.com/dgraph-io/badger/pull/2094)
- fix(cd): added more debug things to cd by
[@&#8203;harshil-goel](https://github.com/harshil-goel) in
[https://github.com/dgraph-io/badger/pull/2095](https://github.com/dgraph-io/badger/pull/2095)
- fix(cd): removing some debug items by
[@&#8203;harshil-goel](https://github.com/harshil-goel) in
[https://github.com/dgraph-io/badger/pull/2096](https://github.com/dgraph-io/badger/pull/2096)

**Full Changelog**:
dgraph-io/badger@v4.2.0...v4.3.0

</details>

<details>
<summary>fergusstrange/embedded-postgres
(github.com/fergusstrange/embedded-postgres)</summary>

###
[`v1.29.0`](https://github.com/fergusstrange/embedded-postgres/releases/tag/v1.29.0)

[Compare
Source](https://github.com/fergusstrange/embedded-postgres/compare/v1.28.0...v1.29.0)

#### What's Changed

- Update versions by
[@&#8203;fergusstrange](https://github.com/fergusstrange) in
[https://github.com/fergusstrange/embedded-postgres/pull/142](https://github.com/fergusstrange/embedded-postgres/pull/142)
**Full Changelog**:
fergusstrange/embedded-postgres@v1.28.0...v1.29.0

</details>

<details>
<summary>rs/cors (github.com/rs/cors)</summary>

###
[`v1.11.1`](https://github.com/rs/cors/compare/v1.11.0...v1.11.1)

[Compare
Source](https://github.com/rs/cors/compare/v1.11.0...v1.11.1)

</details>

<details>
<summary>grpc/grpc-go (google.golang.org/grpc)</summary>

###
[`v1.66.0`](https://github.com/grpc/grpc-go/releases/tag/v1.66.0):
Release 1.66.0

[Compare
Source](https://github.com/grpc/grpc-go/compare/v1.65.0...v1.66.0)

### New Features

- metadata: stabilize `ValueFromIncomingContext`
([#&#8203;7368](https://github.com/grpc/grpc-go/issues/7368))
- Special Thanks:
[@&#8203;KarthikReddyPuli](https://github.com/KarthikReddyPuli)
- client: stabilize the `WaitForStateChange` and `GetState` methods,
which were previously experimental.
([#&#8203;7425](https://github.com/grpc/grpc-go/issues/7425))
- xds: Implement ADS flow control mechanism
([#&#8203;7458](https://github.com/grpc/grpc-go/issues/7458))
- See
[https://github.com/grpc/grpc/issues/34099](https://github.com/grpc/grpc/issues/34099)
for context.
- balancer/rls: Add metrics for data cache and picker internals
([#&#8203;7484](https://github.com/grpc/grpc-go/issues/7484),
[#&#8203;7495](https://github.com/grpc/grpc-go/issues/7495))
- xds: LRS load reports now include the `total_issued_requests` field.
([#&#8203;7544](https://github.com/grpc/grpc-go/issues/7544))

### Bug Fixes

- grpc: Clients now return status code INTERNAL instead of UNIMPLEMENTED
when the server uses an unsupported compressor. This is consistent with
the [gRPC compression
spec](https://github.com/grpc/grpc/blob/master/doc/compression.md#compression-method-asymmetry-between-peers).
([#&#8203;7461](https://github.com/grpc/grpc-go/issues/7461))
- Special Thanks:
[@&#8203;Gayathri625](https://github.com/Gayathri625)
- transport: Fix a bug which could result in writes busy looping when
the underlying `conn.Write` returns errors
([#&#8203;7394](https://github.com/grpc/grpc-go/issues/7394))
- Special Thanks: [@&#8203;veshij](https://github.com/veshij)
- client: fix race that could lead to orphaned connections and
associated resources.
([#&#8203;7390](https://github.com/grpc/grpc-go/issues/7390))
- xds: use locality from the connected address for load reporting with
pick_first
([#&#8203;7378](https://github.com/grpc/grpc-go/issues/7378))
- without this fix, if a priority contains multiple localities with
pick_first, load was reported for the wrong locality
- client: prevent hanging during ClientConn.Close() when the network is
unreachable
([#&#8203;7540](https://github.com/grpc/grpc-go/issues/7540))

### Performance Improvements

- transport: double buffering is avoided when using an http connect
proxy and the target server waits for client to send the first message.
([#&#8203;7424](https://github.com/grpc/grpc-go/issues/7424))
- codec: Implement a new `Codec` which uses buffer recycling for encoded
message
([#&#8203;7356](https://github.com/grpc/grpc-go/issues/7356))
- introduce a `mem` package to facilitate buffer reuse
([#&#8203;7432](https://github.com/grpc/grpc-go/issues/7432))
- Special Thanks:
[@&#8203;PapaCharlie](https://github.com/PapaCharlie)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- 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/cerbos/cerbos).

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

---------

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Signed-off-by: Charith Ellawala <charith@cerbos.dev>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Charith Ellawala <charith@cerbos.dev>
mYmNeo added a commit to mYmNeo/badger that referenced this pull request Sep 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants