Conversation
The expiry index is what the sweeper reaches a surviving byCredit field through, so removing it first and then failing on the field orphans that field: nothing points at it any more and reserved_credits reads high for that tenant forever. Swapping the order leaves the recoverable failure instead, since a surviving index entry is swept. Found reviewing the Java port (schematic-java#109), whose store already does it in this order; schematic-go does too, and schematic-node took the same change as 923dee5. Also name the conformance suite's real source: the vectors track schematic-node's conformance directory, not a particular branch of it.
Having a `pipeline` attribute is not the same as honouring `transaction=True`. redis-py's asyncio cluster client carries the attribute and raises RedisClusterException before any I/O, so the getattr guard let the refusal escape add(). The caller in check.py catches it, undoes the debit and returns lease_store_error, which fail-closes every gated check on a cluster deployment. That is a regression: the two writes used to go out directly and worked there. Probe by calling it instead, so both a cluster client and a shim that does not take the keyword resolve to the sequential path.
schematic-bot
approved these changes
Sep 20, 2026
bpapillon
deleted the
bpapillon/sch-7530-lease-client-gaps-found-in-the-port-reviews-that-node-go-and
branch
September 20, 2026 06:01
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.
Python leg of SCH-7530, matching schematic-node #194 commit for commit.
fractional-usage.json.comp_-prefixed value as the Schematic id, the order the server uses.Already correct in Python and pinned by the new vector: no wait on a cache miss while disconnected, and the settle quantity rounding up on the wire.