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

Reduced unwanted Object creation #922

Closed
RobAustin opened this issue Oct 8, 2021 · 5 comments
Closed

Reduced unwanted Object creation #922

RobAustin opened this issue Oct 8, 2021 · 5 comments
Assignees

Comments

@RobAustin
Copy link
Contributor

RobAustin commented Oct 8, 2021

This relates to the following support issue -- https://support.chronicle.software/staff/ticket/422

The following is from a YourKit Dump

image

@nicktindall
Copy link
Contributor

Just shooting from the hip here, could this be related to the removal of the caching in that area, now we are ending up looking to the file system more often to see which cycles are there? I wonder if we could use a WatchService to eliminate unnecessary directory listings (i.e. only refresh when there are changes)? or if that would also be garbage-y?

https://docs.oracle.com/javase/tutorial/essential/io/notification.html

@glukos
Copy link
Contributor

glukos commented Oct 11, 2021

@nicktindall
I don't think we can get rid of scanning through queue directory, but WatchService is a good idea, thanks. We can trigger refresh only on WatchService event (ideally, only on removes) instead of doing it every minute.
Allocation burst on refresh is reproducible - all we need is creating enough queue files:
image
I'll start with optimizing it

@JerryShea
Copy link
Contributor

May be worth doing #913 while you are looking at this

@glukos
Copy link
Contributor

glukos commented Oct 12, 2021

@nicktindall @JerryShea @RobAustin
Please see #925.
I think the allocations issue is mostly resolved by the patch, but refresh operation is still CPU consuming (and may cause latency spikes). I've created a separate #924 for using WatchService.

@hft-team-city
Copy link
Collaborator

Released in Chronicle-Queue-5.21.92, BOM-2.21.237

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 a pull request may close this issue.

5 participants