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

Improve test stability #1423

Merged
merged 11 commits into from
Aug 1, 2022
Merged

Conversation

yufei-cai
Copy link
Contributor

  • Use the configured write consistency for all Ditto pubsub updates
  • Remove write consistency field from Ditto pubsub requests
  • ThingUpdater: delay weak acknowledgements to the end of the next persistence operation
  • Do not terminate ThingUpdater after max-idle-time when the actor is not idle
  • Do not schedule clock ticks in ThingUpdater in the absence of incoming updates

Reason: Event metadata computation has side effects including
sending weak acknowledgements that should not happen until after
persistence completes.

Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
… from ddata config.

Reason: Write consistency was not guaranteed in the presence of parallel requests.

Example:

Start with state S0.

Request R1 changes state to S1 with local write concern.

Local write succeeds.

Request R2 changes state to S1 from S0, but with write concern ALL.

Request R2 is considered NOOP, no cluster write is initiated.

Request R2 is acknowledged immediately before cluster write happens.

Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
@thjaeckle thjaeckle added this to the 3.0.0 milestone Jul 29, 2022
Signed-off-by: Yannic Klem <yannic.klem@bosch.io>
@Yannic92 Yannic92 merged commit 48c3196 into eclipse-ditto:master Aug 1, 2022
@Yannic92 Yannic92 deleted the bugfix/test-stability branch August 1, 2022 07:13
This pull request was closed.
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.

3 participants