[CLIENT-5057] Document which string operations create a new bin or no-op if a bin does not exist - #1150
Merged
juliannguyen4 merged 26 commits intoJul 23, 2026
Conversation
…ditional / changes to tests. Also string ops tests should be refactored to make easier to change across the board.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## dev #1150 +/- ##
=======================================
Coverage 85.38% 85.38%
=======================================
Files 101 101
Lines 14608 14609 +1
=======================================
+ Hits 12473 12474 +1
Misses 2135 2135 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
…the same string bin. This reduces a good amount of tech debt.
… ops. TODO - Some of these are failing locally, so need to triage
…the same string bin. This reduces a good amount of tech debt.
juliannguyen4
changed the base branch from
dev
to
CLIENT-5057-refactor-string-ops-tests
July 14, 2026 22:59
…hange the pad string for pad_start and pad_end, but allow the target_length to be as big as NEEDLE
…non-existent bin name with value set to None instead of the bin name being absent in the bin dictionary. Add more e2e test cases that cover the rest of the string write operations that should be a no-op on a non-existent bin.
…document-string-ops-behavior-when-bin-is-missing
… in each operation's docstring instead of in the string write flags section. Also align with API docs standards by having string write ops' docstrings start with one sentence and have details in a following paragraph.
…ODO - to_string expression currently failing so need to debug it.
…g expression tests currently fail locally, so run in CI/CD
…failing-to-compile-with-Werror-flag
…ag' into CLIENT-5057-document-string-ops-behavior-when-bin-is-missing
…RING_TO_STRING like the to_string() operation helper.
…ions assumes that the bin contains a string. This usually would not be true for the ToString expression. This issue may also happen in other expressions like list, map etc.
…tring-ops-behavior-when-bin-is-missing
…tring-ops-behavior-when-bin-is-missing
…this should be a positive test case
…ive/oversized count argument. Invalid bin types, according to the client string operations API spec, are supposed to fail out even with NO_FAIL set. This causes InvalidRequest on the latest server 8.1.3 dev build, but currently the server's latest master branch has a bug where NO_FAIL is ignored if no ctx argument is passed.
juliannguyen4
commented
Jul 22, 2026
| policy = StringPolicy(write_flags=WriteFlags.NO_FAIL) | ||
| ops = [ | ||
| str_ops.insert(bin_name=NON_STR_BIN_NAME, index=0, value="a", policy=policy) | ||
| str_ops.repeat(bin_name=STR_BIN_NAME, count=-1, policy=policy) |
Collaborator
Author
There was a problem hiding this comment.
todo - invalid request is raised, so need to test against server 8.1.3 with non-ctx code path fix
Collaborator
Author
There was a problem hiding this comment.
(Currently NO_FAIL does not work properly with non-ctx)
…ver master branch has the fix for NO_FAIL being ignored when no ctx argument is passed.
…m operations.read
juliannguyen4
marked this pull request as ready for review
July 23, 2026 19:21
atripathi-aerospike
approved these changes
Jul 23, 2026
juliannguyen4
deleted the
CLIENT-5057-document-string-ops-behavior-when-bin-is-missing
branch
July 23, 2026 20:21
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Extra changes
Docs
https://aerospike-python-client--1150.org.readthedocs.build/en/1150/aerospike_helpers.html#aerospike_helpers.string_helpers.WriteFlags.DEFAULT
TODO