Compare endpoint returns empty diff
ivelina-yordanova opened this issue · 4 comments
Describe the bug
We have 2n environments with different setup and in one the /compare endpoint works as expected whereas in the other it always returns an empty diff.
The differences between the 2 environments are the following:
- env 1) has an increased replica count ( 1 ) and SNOMED International is imported only as a snapshot in MAIN, where after the import we created a version branch, then imported SNOMED UK and a custom extension using the new
extensionOf
feature. - env 2) has the default replica count of 0 and SNOMED International is imported in FULL in MAIN with
createVersions=true
(no manual branch/version creation). then SNOMED UK and out extension is imported similarly to env 1 using theextensionOf
feature.
So, in env 2), the /compare endpoint works like a charm, whereas it does not work at all in env 1)
It's probably worth also noting that the import of an international snapshot was enabled only after commenting out a validation in SnomedRf2ImportRequest.java
as suggested here
To Reproduce
I guess the way to reproduce it is to:
- import a snapshot of SNOMED International (version 2018-07-31), not sure if importing a snapshot of UK and another codeSystem is crucial for this bug.
- increase the replica count
(Those are the 2 differences, we made sure both have the same version of snowowl - it's the latest of your 7.x branch at the time - commit 7640094 )
Expected behavior
Expect the endpoint to behave the same in both setups.
Version
- Snow Owl Version: commit 7640094
- Elasticsearch Version (external): external - ES: 7.1.1
Additional context
N/A
Hi @cmark,
In the latest release 7.7.0 this original issue seems to have been fixed, thanks it was very useful.
However, now this same endpoint is behaving odd in a different way - it returns empty diff at random.
Steps to reproduce:
- create a branch
- create a concept in that branch
- update branch
- compare
loop over these steps few times and at random some of the compare responses contain empty diff. I am wondering if there might be any timing issue here that I cannot detect given I am not too familiar with the way those requests are executed.
Do you have any idea what might cause this unpredictable behaviour? (SIde note: the concepts are for sure created and the branch is updated)
Thanks,
Ivelina
I'm glad the fix worked for you.
May I ask for information about your current setup on top of replica count? Any specific Elasticsearch configuration, other node types, anything else? Thank you!
In the meantime, I'll investigate why the compare endpoint behaves this way.
Cheers,
Mark
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
We were unable to identify any issues around the branch compare functionality that would indicate a behavior like this. We will close this issue now. Feel free to reopen this one or create a new one if you still experience the issue.
Cheers,
Mark