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

clebert suconic commented on ARTEMIS-732:
-----------------------------------------

I'm not saying it's not an issue. What I'm saying I was asking what was the 
issue....


I didn't realize the:

"which might have disabled stack guard. The VM will try to fix the stack guard 
now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', 
or link it with '-z noexecstack'"


I had seen this some time ago which I eliminated with some tweaks on the 
loading.


I would rather fix the classpath on a single script than separate it into two. 
(Like test if we have 32, 64 or something else (like some sparc linuxes where 
you could have the user compiling the native themselves).





I will fix this but I wouldn't make two scripts.

> Need a 64-bit specific launching script
> ---------------------------------------
>
>                 Key: ARTEMIS-732
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-732
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 1.4.0
>         Environment: Debian Linux 64-bit, OpenJDK 1.8.0.102
>            Reporter: Jim Gomes
>              Labels: easyfix
>             Fix For: 1.5.0
>
>         Attachments: artemis, artemis64
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> The artemis launching script located in the bin folder needs to be split into 
> two separate scripts: one for 32-bit, and one for 64-bit. The current script 
> attempts (but fails) to be run-time adaptive. However, when running on a 
> 64-bit environment, the following error is always displayed when it is run:
> {noformat}
> OpenJDK 64-Bit Server VM warning: You have loaded library
> /home/username/apache-artemis-1.4.0/bin/lib/linux-i686/libartemis-native-32.so
> which might have disabled stack guard. The VM will try to fix the stack guard 
> now.
> It's highly recommended that you fix the library with 'execstack -c 
> <libfile>', or link it with '-z noexecstack'
> {noformat}
> The problem is with the {{exec}} command-line, specifically the 
> {{-Djava.library.path}} parameter. It combines both the 32-bit library path 
> and the 64-bit library path, but it doesn't actually work.  The script should 
> be split into two separate scripts, one for 32-bit and one for 64-bit. All 
> that is necessary is to modify the library path to be platform specific, and 
> the error condition is resolved. I have attached modified script files 
> (*{{artemis}}* and *{{artemis64}}*) that can be used depending on the 
> run-time environment. Here are the key differences between the two scripts:
> {code:title=32-bit version}
> exec "$JAVACMD" $JAVA_ARGS $ARTEMIS_CLUSTER_PROPS \
>     -classpath "$CLASSPATH" \
>     -Dartemis.home="$ARTEMIS_HOME" \
>     -Djava.library.path="$ARTEMIS_HOME/bin/lib/linux-i686" \
>     $DEBUG_ARGS \
>     org.apache.activemq.artemis.boot.Artemis "$@"}}
> {code}
> {code:title=64-bit version}
> exec "$JAVACMD" $JAVA_ARGS $ARTEMIS_CLUSTER_PROPS \
>     -classpath "$CLASSPATH" \
>     -Dartemis.home="$ARTEMIS_HOME" \
>     -Djava.library.path="$ARTEMIS_HOME/bin/lib/linux-x86_64" \
>     $DEBUG_ARGS \
>     org.apache.activemq.artemis.boot.Artemis "$@"
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to