-
Notifications
You must be signed in to change notification settings - Fork 926
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
ARTEMIS-5305 Improving performance of paging with multiple producers #5498
base: main
Are you sure you want to change the base?
Conversation
3ce16c6
to
fbf0910
Compare
...rc/main/java/org/apache/activemq/artemis/core/paging/cursor/impl/PageCursorProviderImpl.java
Show resolved
Hide resolved
d8e2767
to
483f513
Compare
Seems to be a heap dump attached to the second commit which is probably not meant to be there |
afc9278
to
1327ade
Compare
7388bde
to
1608561
Compare
I have done a lot of review myself, trying to pretend I was someone else (like Robbie) and review my own stuff.. and I reach a limit ... I can't find anything else :) Tests are extremely stable.. done a lot of testing... |
574dc22
to
b01f91a
Compare
artemis-server/src/main/java/org/apache/activemq/artemis/core/paging/impl/PagingStoreImpl.java
Outdated
Show resolved
Hide resolved
artemis-server/src/main/java/org/apache/activemq/artemis/core/paging/impl/PagingStoreImpl.java
Outdated
Show resolved
Hide resolved
0752f44
to
0cdd5fb
Compare
Right now there are two operation ways.. one for unit tests (PagingStoreImpl). I will make changes on PagingStoreImpl to account for a SCheduledExecutor. |
that way there's only going to be one way to lock this... by being single threaded through the PagingStore::executor (the PageTimedWriter also uses the same executor). |
e2f4d4f
to
88ca17b
Compare
I reworked the tests in a way to not require two types of locking. Basically it's pretty much single threaded now (through pageExecutor). |
This is improving how locking works by using a single threaded executor on paging and depaging as well as batching writes instead of directly writing on the files from the producers.
@gemmellr can we merge this? I wanted to merge this before the javadoc huge change by Justin... besides I will have to bring this to an internal branch of mine based on a previous version and I need to start working on that.... |
This is improving how locking works by using a single threaded executor on paging and depaging
as well as batching writes instead of directly writing on the files from the producers.