GitHub user clebertsuconic opened a pull request:
https://github.com/apache/activemq-artemis/pull/98
ARTEMIS-163 Simplification of the native layer
This is simplifying the native layer:
- no more mallocs after initialization on the native layer (except to new
buffers when out of the pool)
- adding sync calculation for when initializing the journal
I'm already working on 4096 but I don't want to hold this initial commit
for now. I will send another PR over the next few days.
No regressions found over several runs of the testsuite.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/clebertsuconic/activemq-artemis new-native
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/activemq-artemis/pull/98.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #98
----
commit 1e5c7d5ca98caaa96a2591197bb81e43ebd9eefd
Author: Clebert Suconic <[email protected]>
Date: 2015-07-27T20:15:03Z
ARTEMIS-163 First pass on the native AIO refactoring
https://issues.apache.org/jira/browse/ARTEMIS-163
On this pass I'm just converting the native layer to a simpler one.
It wasn't very easy to change the alignment at the current framework,
so I did some refactoring simplifying the native layer
The volume of the nubmer of changes here is because:
- The API is changed, we now don't close the libaio queue between files
- The native layer won't use malloc as much as it used to, saving some CPU
and memory defragmentation
- I organized the code around nio and libaio
All the tests are passing with this commit
commit c53787f7aea1ca2ba92240d6051d7173bd8119b0
Author: Clebert Suconic <[email protected]>
Date: 2015-07-28T17:44:19Z
sync calculation
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---