Details
-
Task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
This ticket is a parent of several other tickets, under which we can discuss the merits of separating or grouping particular modules into more or fewer maven projects. Here's a list of pros and cons:
Pros:
- Explicit modularity encourages reuse outside of Accumulo.
- Smaller projects encourage participation in coding project-local features.
- Projects like the shell and the monitor can be exemplars for new projects or applications built on top of Accumulo.
- Separating projects forces use of publicly accessible APIs instead of custom connections. This is a form of dogfooding, and helps code quality.
Cons:
- More projects means more maven configuration, particularly in downstream projects that are dependent on multiple projects.
- Coding features across projects might be harder to comprehend and to test.
- In the extreme case, we may see public API bloat in order to support too diverse a set of projects.
Discuss...
Attachments
Issue Links
- breaks
-
ACCUMULO-1843 NativeMap Makefile creates incorrect output file for OSX
- Resolved
- contains
-
ACCUMULO-656 move monitor code out of server
- Resolved
-
ACCUMULO-655 move test code from server package into its own package
- Resolved
-
ACCUMULO-647 Make FATE a separate module
- Resolved
- is depended upon by
-
ACCUMULO-210 create packages that enable accumulo features on the given node
- Resolved
- relates to
-
ACCUMULO-1860 NativeMapIT fails
- Resolved
-
ACCUMULO-1885 README shows steps to build native libraries which are not valid anymore
- Resolved
1.
|
move monitor code out of server | Resolved | Christopher Tubbs |