-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
[BUG] Performance degradation in v5.0.18 #2451
Comments
So I decided to profile this repro to understand what leads to this performance degradation. Profiling for 5.0.19 gives the following results: And here is how it looks for v5.0.17: After some investigation, turns out that there is an issue in Now repro runs in 42 seconds. 4x faster than 5.0.19 but still ~3x slower than 5.0.17. Further profiling results: ENSURE(this.IsValidPos(position), $"invalid segment position in index footer: {ToString()}/{index}");
ENSURE(this.IsValidLen(length), $"invalid segment length in index footer: {ToString()}/{index}"); So I just commented these 2 lines to check and 1 in IndexService, and it runs in 13 seconds, pretty close to v5.0.17. |
Created PR to fix the first part - #2453 |
Created PR to fix the second part - #2454 |
@mbdavid Sorry but I believe this is a critical issue, in the current state v5.0.19 is not usable. I did all the research and fixes, please consider merging it. |
I agree. This fix will help me too. thank you for your work @alexbereznikov . I hope it will be merged |
#2515 should fix remaining issues here |
Version
v5.0.18, v5.0.19
Describe the bug
Upsert performance degraded in ~14 times in v5.0.18 when compared to 5.0.17
Code to Reproduce
Running this snippet with v5.0.17 and 5.0.18 is enough to see the issue. On my machine, 5.0.17 runs in 12 seconds, and 5.0.18 runs in 2m 50 seconds.
Expected behavior
Expected behavior is that performance in v5.0.18 is more or less the same as in v5.0.17
Screenshots/Stacktrace
N/A
Additional context
I haven't experimented much, upserting in chunks because that's what we do in our app, maybe chunk size matters, maybe not. Also haven't tried other operations.
The text was updated successfully, but these errors were encountered: