Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

POST /keys/upload/ responses include an internal _INT_STREAM_POS dict #15308

Closed
dkasak opened this issue Mar 22, 2023 · 1 comment · Fixed by #15309
Closed

POST /keys/upload/ responses include an internal _INT_STREAM_POS dict #15308

dkasak opened this issue Mar 22, 2023 · 1 comment · Fixed by #15309
Assignees
Labels
T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues.

Comments

@dkasak
Copy link
Member

dkasak commented Mar 22, 2023

Looks like we inadvertently include this replication machinery related dict in the response, possibly after #15024? Not harmful, but should be removed.

@dkasak dkasak added the T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues. label Mar 22, 2023
@DMRobertson
Copy link
Contributor

@DMRobertson DMRobertson self-assigned this Mar 22, 2023
DMRobertson pushed a commit that referenced this issue Mar 22, 2023
Suppose worker A makes an internal http request from worker B. B may
make changes that A later learns about over replication. We want A's
request to block until it has seen those changes—mainly to ensure A's
caches are invalidated promptly. This helps provide read-after-write
consistency, eliminating entire categories of races and test flakes.

To implement this, B includes a top-level field `_INT_STREAM_POS` in its
response JSON. Roughly speaking, the field's value tells A what to wait
for. But we weren't removing that internal field before A's request
completed!

Introduced in #14820.
Fixes #15308.
DMRobertson pushed a commit that referenced this issue Mar 22, 2023
* Have replication clients remove _INT_STREAM_POS

Suppose worker A makes an internal http request from worker B. B may
make changes that A later learns about over replication. We want A's
request to block until it has seen those changes—mainly to ensure A's
caches are invalidated promptly. This helps provide read-after-write
consistency, eliminating entire categories of races and test flakes.

To implement this, B includes a top-level field `_INT_STREAM_POS` in its
response JSON. Roughly speaking, the field's value tells A what to wait
for. But we weren't removing that internal field before A's request
completed!

Introduced in #14820.
Fixes #15308.

* Changelog
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants