[ 
https://issues.apache.org/jira/browse/ACCUMULO-2100?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13859553#comment-13859553
 ] 

Michael Wall commented on ACCUMULO-2100:
----------------------------------------

[~elserj] I know we emailed back and forth about this, but now that I have I 
had a chance to digest it for a while I wanted to open up the discussion again.

It seems like the reason for accumulo-instamo-archetype-1.4 and 
accumulo-instamo-archetype-1.5 etc is because of changes in the API for the 
MiniAccumuloCluster.  For most projects, I would handle this with a wrapper 
around MiniAccumuloCluster to hid these changes.  In fact, I already created a 
wrapper in some of my testing that extends the MiniAccumuloCluster to override 
close and clean up the the temp directory.  Are the differences between 
MiniAccumulo version so complex a wrapper wouldn't work?

When I think about it from a user perspective, I would want one archetype that 
allows you specify the version of accumulo to use.  Something like
{noformat}
mvn archetype:generate -Daccumulo.version=1.5.1
{noformat}

Two things I don't know if archetypes handle that would be needed
1 - A way to validate optional properties.  It would be useful to specify a 
released version of the archetype supports version A, B and C and throw an 
error if you tried to use a different accumulo version.
2 - A way to include a specific version of the wrapper based on the accumulo 
version passed in.  

To me, here are benefits assuming those 2 items are possible.  
 - Adding support for a new version of Accumulo would be adding new wrapper 
class instead of creating a new archetype.  
 - It would allow for multiple version of minor release, like 1.4.4 and 1.4.3.  
I am sure users will stuck at certain releases behind the latest and would want 
to use the archetype to build new components.



> instamo-archetype could use a little clean up
> ---------------------------------------------
>
>                 Key: ACCUMULO-2100
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-2100
>             Project: Accumulo
>          Issue Type: Improvement
>          Components: instamo-archetype
>            Reporter: Michael Wall
>            Assignee: Josh Elser
>            Priority: Minor
>
> Some of the things I noticed
> - mvn test fails, because it took longer than 30 secs to startup the MAC on 
> my linux box.
> - README needs to be updated, usage is incorrect
> - pom.xml doesn't hook exec:exec into any lifecycle so you have to call mvn 
> compile exec:exec -Pwhatever
> - Could abstract out a MiniAccumuloClusterWrapper to handle the temp 
> directory clean up and make the usage across the ShellExample, 
> MapReduceExample and ExampleAccumuloUnitTest consistent.  Would also make it 
> easier to implement ACCUMULO-2097 and ACCUMULO-2098
> BTW, I am running this against the origin/1.5 branch, targeting an archetype 
> that is compatible with Accumulo 1.5.0
> Patch coming for review



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to