Christopher L. Shannon created AMQ-9824:
-------------------------------------------
Summary: Cleanup KahaDBStore and MessageDatabase classes
Key: AMQ-9824
URL: https://issues.apache.org/jira/browse/AMQ-9824
Project: ActiveMQ
Issue Type: Task
Components: KahaDB
Reporter: Christopher L. Shannon
Assignee: Christopher L. Shannon
Fix For: 6.3.0
While looking at AMQ-9823 I noticed just how much of a mess a lot of the code
is in KahaDB. I decided to go through and clean up some of the issues in the
code and also modernize it a bit (ie use lambdas in some spots). There is still
more to do but this will be a good start. Note that I only tackled the
KahaDBStore and MessageDatabase classes as there were already a lot of changes
and the PR is big enough. Other classes like PageFile or future work can be
done in a follow on PR.
This task will include the following:
* Fixes the scope of several methods and types. For example, there were many
cases where protected methods were referencing types that were package scope.
* Simplified the code by replacing anonymous methods with lambdas
* removed unused methods and parameters
* removed unnecessary casts
* cleaned up the use of generics where types could be inferred
* Replaced the ReentrantReadWriteLock that was used for indexLock with
ReentrantLock becuase only the write lock was ever being used (the page file
doesn't support concurrent reads right now). This should provide a small
performance/memory improvement and simplifies the code a bit.
* removed unnecessary null initializations
* cleaned up logging to remove string concatenation and instead use parameters
* removed method overrides that are the same as the parent or just call the
super method
* removed unused checked exceptions from method's throws
* marked inner classes as static when possible
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact