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

PartialSuccessTransmissionPolicy: Avoid unnecessary content deserializations #2500

Conversation

vangarp
Copy link
Contributor

@vangarp vangarp commented Dec 17, 2021

Fix Issue #2445 by only deserializing the content at the point in time when we absolutely must.

Changes

(Please provide a brief description of the changes here.)

Checklist

  • I ran Unit Tests locally.
  • CHANGELOG.md updated with one line description of the fix, and a link to the original issue if available.

For significant contributions please make sure you have completed the following items:

  • Design discussion issue #
  • Changes in public surface reviewed

The PR will trigger build, unit tests, and functional tests automatically. Please follow these instructions to build and test locally.

Notes for authors:

  • FxCop and other analyzers will fail the build. To see these errors yourself, compile localy using the Release configuration.

Notes for reviewers:

  • We support comment build triggers
    • /AzurePipelines run will queue all builds
    • /AzurePipelines run <pipeline-name> will queue a specific build

@vangarp vangarp changed the title Vangarp/optimize partialsuccessretransmissionpolicy PartialSuccessTransmissionPolicy: Avoid unnecessary content deserializations Dec 17, 2021
@TimothyMothra
Copy link
Member

On the whole, i like this change to defer the Json Deserialization until it's needed.
The only problem i see is that the deserialization happens inside the foreach and could be run multiple times.
We may need to cache this deserialization.

@vangarp
Copy link
Contributor Author

vangarp commented Dec 17, 2021

On the whole, i like this change to defer the Json Deserialization until it's needed.
The only problem i see is that the deserialization happens inside the foreach and could be run multiple times.
We may need to cache this deserialization.

Absolutely…..created in a hurry and missed this. Will make the necessary changes

@TimothyMothra
Copy link
Member

LGTM. Can you please move your changelog entry under the VNext section?

@TimothyMothra
Copy link
Member

I see a bunch of "retrigger checks" commits. Don't worry about that.
We have a handful of tests that are flaky, I can re-queue a subset of tests without retrigging all of them.

@TimothyMothra TimothyMothra merged commit 4b0a419 into microsoft:main Dec 21, 2021
@TimothyMothra
Copy link
Member

@vangarp, this just merged. Thank you for your patience.

Setting expectations for the future,
We don't currently have a date planned for the 2.21 milestone.
2.21-beta1 will likely be by the end of January.
We just missed the cutoff for today's nightly build, but this change will be in tomorrow's nightly.

@vangarp
Copy link
Contributor Author

vangarp commented Dec 21, 2021

@vangarp, this just merged. Thank you for your patience.

Setting expectations for the future, We don't currently have a date planned for the 2.21 milestone. 2.21-beta1 will likely be by the end of January. We just missed the cutoff for today's nightly build, but this change will be in tomorrow's nightly.

Thank you so much! Ack on the dates

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Unncessary response deserializations in PartialSuccessTransmissionPolicy for ingestion sampling cases
2 participants