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

Migration path from sdk version < 3.38 to 3.38.1 #4431

Open
ezgambac opened this issue Apr 17, 2024 · 2 comments
Open

Migration path from sdk version < 3.38 to 3.38.1 #4431

ezgambac opened this issue Apr 17, 2024 · 2 comments
Labels

Comments

@ezgambac
Copy link

From reading the docs and release logs, version 3.38.1 has the env variable AZURE_COSMOS_OPTIMISTIC_DIRECT_EXECUTION_ENABLED which can be set to false to migrate from sdk version < 3.38.

My question is if the following migration plan works:

  • set AZURE_COSMOS_OPTIMISTIC_DIRECT_EXECUTION_ENABLED = false and sdk version to 3.38.1
  • deploy the change
  • Remove AZURE_COSMOS_OPTIMISTIC_DIRECT_EXECUTION_ENABLED=false or set it to true

My biggest concern is if a token generated in sdk version 3.38.1 with AZURE_COSMOS_OPTIMISTIC_DIRECT_EXECUTION_ENABLED=false, would it still work when AZURE_COSMOS_OPTIMISTIC_DIRECT_EXECUTION_ENABLED=true?

We want to prevent downtime for our customers, and want to see if this migration plan would allow us to prevent it.

@ealsur
Copy link
Member

ealsur commented Apr 17, 2024

@adityasa Can you please help answer this question?

@adityasa
Copy link
Contributor

adityasa commented Apr 18, 2024

@ezgambac thank you for reaching out and your question.
Short answer - continuation tokens are honored while going from
AZURE_COSMOS_OPTIMISTIC_DIRECT_EXECUTION_ENABLED=false to
AZURE_COSMOS_OPTIMISTIC_DIRECT_EXECUTION_ENABLED=true

A separate, but relevant issue worth noting is:
#4432

We are actively investigating and working on a fix for above issue. To double confirm, it only affects the queries that were initially executed using ODE codepath (queries that go against single partition or when collection had single physical parititon) and were resumed using continuation token after a partition split.

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

No branches or pull requests

3 participants