Skip to content

Fix duplication handling in ES processor#1205

Merged
alexshtin merged 6 commits into
temporalio:masterfrom
alexshtin:feature/es-processor-fix-dup-handling
Jan 21, 2021
Merged

Fix duplication handling in ES processor#1205
alexshtin merged 6 commits into
temporalio:masterfrom
alexshtin:feature/es-processor-fix-dup-handling

Conversation

@alexshtin

@alexshtin alexshtin commented Jan 20, 2021

Copy link
Copy Markdown
Contributor

What changed?
Fix visibility task keys duplication resoler logic. Now it fails previous task and store new one for future ack/nack. Also add extra protection with processed flag in case if same key will be acked/nacked more than once.

Why?
Bug fix. In case of ES bulk operation timeout, previous implementation will be blocked forever while ack existing visibility task.

How did you test it?
Run manual tests locally with lower ES bulk operation timeout (500ms). Automated tests will be added later.

Potential risks
No risks.

@alexshtin alexshtin force-pushed the feature/es-processor-fix-dup-handling branch from 1e7dcd0 to 0086812 Compare January 20, 2021 23:45
Comment thread common/persistence/elasticsearch/esProcessor.go Outdated
@alexshtin alexshtin force-pushed the feature/es-processor-fix-dup-handling branch from 0086812 to 5642fe4 Compare January 21, 2021 00:46
@alexshtin alexshtin merged commit 0eefdbc into temporalio:master Jan 21, 2021
@alexshtin alexshtin deleted the feature/es-processor-fix-dup-handling branch January 21, 2021 01:35
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.

2 participants