accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ACCUMULO-2944) Generated configuration files and scripts assume SUN as JVM
Date Wed, 09 Jul 2014 07:20:05 GMT

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

ASF GitHub Bot commented on ACCUMULO-2944:
------------------------------------------

Github user haydenmarchant commented on a diff in the pull request:

    https://github.com/apache/accumulo/pull/9#discussion_r14696336
  
    --- Diff: minicluster/src/main/java/org/apache/accumulo/minicluster/impl/MiniAccumuloClusterImpl.java
---
    @@ -259,7 +259,14 @@ private Process _exec(Class<?> clazz, List<String> extraJvmOpts,
String... args)
         for (Entry<String,String> sysProp : config.getSystemProperties().entrySet())
{
           argList.add(String.format("-D%s=%s", sysProp.getKey(), sysProp.getValue()));
         }
    -    argList.addAll(Arrays.asList("-XX:+UseConcMarkSweepGC", "-XX:CMSInitiatingOccupancyFraction=75",
"-Dapple.awt.UIElement=true", Main.class.getName(), className));
    +    
    +    String gcPolicyArgs = System.getenv("GC_POLICY_ARGS");
    --- End diff --
    
    Since I am not so familiar with maven, my assumption was that a user would manually change
the pom to 'inject' the JVM-vendor. If we can automate this by profiles, that makes a lot
of sense. I take it that it doesn't change this patch, but rather would be on top of this?


> Generated configuration files and scripts assume SUN as JVM
> -----------------------------------------------------------
>
>                 Key: ACCUMULO-2944
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-2944
>             Project: Accumulo
>          Issue Type: Sub-task
>          Components: build
>    Affects Versions: 1.6.0
>         Environment: IBM JVM
>            Reporter: Hayden Marchant
>            Assignee: Hayden Marchant
>             Fix For: 1.6.1, 1.7.0
>
>   Original Estimate: 72h
>  Remaining Estimate: 72h
>
> There are a few issues, detailed below:
>  a. The generated configuration files contain references to GC 
> params that are specific to Sun JVM. In accumulo-env.sh, the 
> ACCUMULO_TSERVER_OPTS contains -XX:NewSize and -XX:MaxNewSize , and also in ACCUMULO_GENERAL_OPTS,
> -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 are used.
> b. in bin/accumulo, get ClassNotFoundException due to 
> specification of JAXP Doc Builder: 
> -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl

> . 
>         The Sun implementation of Document Builder Factory does not exists 
> in IBM JDK, so a ClassNotFoundException is thrown on running accumulo 
> script
> c. MiniAccumuloCluster - in the MiniAccumuloClusterImpl, 
> Sun-speciifc GC params are passed as params to the java process (similar 
> to section a. )
> Single proposal for solving all 3 issues:
> Enhance bootstrap_config.sh with request to select Java vendor. 
> Selecting this will set correct values for GC params (they differ between 
> IBM and Sun), inclusion/ommision of JAXP setting. The 
> MiniAccumuloClusterImpl can read the same env variable that was set in 
> code for the GC Params, and use in the exec command.
> For exampel, doing this will result in CMS settings existing for SUN JVM, but when using
IBM JVM, the relevant GC parameter for IBM JVM will be used instead. In addition, the SUN
JAXP implementation will be omitted on non-SUN JVM.
> For now, I plan on having 4 options in new question
> 1. Sun
> 2. OpenJDK
> 3. IBM
> 4. Other



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message