You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@storm.apache.org by "Bryan Shell (JIRA)" <ji...@apache.org> on 2015/09/02 21:36:47 UTC

[jira] [Updated] (STORM-1026) Adding external classpath elements does not work

     [ https://issues.apache.org/jira/browse/STORM-1026?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Shell updated STORM-1026:
-------------------------------
    Description: 
Adding an external path and/or jar to the classpath fails to work as expected.  I would expect it to work the same as {noformat}
"${STORM_DIR}/extlib"{noformat} and {noformat}"${STORM_DIR}/extlib-daemon"{noformat}, and create a complete list of all jars in the path spec(s). 

Here is an example of the issue:

{code}
% STORM_EXT_CLASSPATH=/usr/lib/jvm/default-java/lib/jconsole.jar python
Python 2.7.6 (default, Jun 22 2015, 17:58:13) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> import fnmatch
>>> os.getenv('STORM_EXT_CLASSPATH', None)
'/usr/lib/jvm/default-java/lib/jconsole.jar'
>>> ret = fnmatch.filter(os.listdir('/opt/HipChat/lib/'), "*.so")
>>> ret
['libxml2.so', 'libogg.so', 'libdbusmenu-qt5.so', 'libhipchatdbusscripting.so', 'libcanberra.so', 'libvorbis.so', 'libxcb-sync.so', 'libxslt.so', 'liblzma.so', 'libqxmpp.so', 'libvorbisfile.so', 'libssl.so', 'libpng16.so', 'libsqlite3.so', 'libz.so', 'libadl_sdk.so', 'libtdb.so', 'libuuid.so', 'libcrypto.so', 'libcanberraSoundNotification.so']
>>> ret.extend(os.getenv('STORM_EXT_CLASSPATH', None))
>>> ret
['libxml2.so', 'libogg.so', 'libdbusmenu-qt5.so', 'libhipchatdbusscripting.so', 'libcanberra.so', 'libvorbis.so', 'libxcb-sync.so', 'libxslt.so', 'liblzma.so', 'libqxmpp.so', 'libvorbisfile.so', 'libssl.so', 'libpng16.so', 'libsqlite3.so', 'libz.so', 'libadl_sdk.so', 'libtdb.so', 'libuuid.so', 'libcrypto.so', 'libcanberraSoundNotification.so', '/', 'u', 's', 'r', '/', 'l', 'i', 'b', '/', 'j', 'v', 'm', '/', 'd', 'e', 'f', 'a', 'u', 'l', 't', '-', 'j', 'a', 'v', 'a', '/', 'l', 'i', 'b', '/', 'j', 'c', 'o', 'n', 's', 'o', 'l', 'e', '.', 'j', 'a', 'r']
{code}

  was:
Adding an external path and/or jar to the classpath fails to work as expected.  I would expect it to work the same as {{{
"${STORM_DIR}/extlib"}}} and {{{
"${STORM_DIR}/extlib-daemon"}}}, and create a complete list of all jars in the path spec(s). 

Here is an example of the issue:

{code}
% STORM_EXT_CLASSPATH=/usr/lib/jvm/default-java/lib/jconsole.jar python
Python 2.7.6 (default, Jun 22 2015, 17:58:13) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> import fnmatch
>>> os.getenv('STORM_EXT_CLASSPATH', None)
'/usr/lib/jvm/default-java/lib/jconsole.jar'
>>> ret = fnmatch.filter(os.listdir('/opt/HipChat/lib/'), "*.so")
>>> ret
['libxml2.so', 'libogg.so', 'libdbusmenu-qt5.so', 'libhipchatdbusscripting.so', 'libcanberra.so', 'libvorbis.so', 'libxcb-sync.so', 'libxslt.so', 'liblzma.so', 'libqxmpp.so', 'libvorbisfile.so', 'libssl.so', 'libpng16.so', 'libsqlite3.so', 'libz.so', 'libadl_sdk.so', 'libtdb.so', 'libuuid.so', 'libcrypto.so', 'libcanberraSoundNotification.so']
>>> ret.extend(os.getenv('STORM_EXT_CLASSPATH', None))
>>> ret
['libxml2.so', 'libogg.so', 'libdbusmenu-qt5.so', 'libhipchatdbusscripting.so', 'libcanberra.so', 'libvorbis.so', 'libxcb-sync.so', 'libxslt.so', 'liblzma.so', 'libqxmpp.so', 'libvorbisfile.so', 'libssl.so', 'libpng16.so', 'libsqlite3.so', 'libz.so', 'libadl_sdk.so', 'libtdb.so', 'libuuid.so', 'libcrypto.so', 'libcanberraSoundNotification.so', '/', 'u', 's', 'r', '/', 'l', 'i', 'b', '/', 'j', 'v', 'm', '/', 'd', 'e', 'f', 'a', 'u', 'l', 't', '-', 'j', 'a', 'v', 'a', '/', 'l', 'i', 'b', '/', 'j', 'c', 'o', 'n', 's', 'o', 'l', 'e', '.', 'j', 'a', 'r']
{code}


> Adding external classpath elements does not work
> ------------------------------------------------
>
>                 Key: STORM-1026
>                 URL: https://issues.apache.org/jira/browse/STORM-1026
>             Project: Apache Storm
>          Issue Type: Bug
>    Affects Versions: 0.10.0, 0.11.0, 0.9.6
>            Reporter: Bryan Shell
>            Priority: Minor
>
> Adding an external path and/or jar to the classpath fails to work as expected.  I would expect it to work the same as {noformat}
> "${STORM_DIR}/extlib"{noformat} and {noformat}"${STORM_DIR}/extlib-daemon"{noformat}, and create a complete list of all jars in the path spec(s). 
> Here is an example of the issue:
> {code}
> % STORM_EXT_CLASSPATH=/usr/lib/jvm/default-java/lib/jconsole.jar python
> Python 2.7.6 (default, Jun 22 2015, 17:58:13) 
> [GCC 4.8.2] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
> >>> import os
> >>> import fnmatch
> >>> os.getenv('STORM_EXT_CLASSPATH', None)
> '/usr/lib/jvm/default-java/lib/jconsole.jar'
> >>> ret = fnmatch.filter(os.listdir('/opt/HipChat/lib/'), "*.so")
> >>> ret
> ['libxml2.so', 'libogg.so', 'libdbusmenu-qt5.so', 'libhipchatdbusscripting.so', 'libcanberra.so', 'libvorbis.so', 'libxcb-sync.so', 'libxslt.so', 'liblzma.so', 'libqxmpp.so', 'libvorbisfile.so', 'libssl.so', 'libpng16.so', 'libsqlite3.so', 'libz.so', 'libadl_sdk.so', 'libtdb.so', 'libuuid.so', 'libcrypto.so', 'libcanberraSoundNotification.so']
> >>> ret.extend(os.getenv('STORM_EXT_CLASSPATH', None))
> >>> ret
> ['libxml2.so', 'libogg.so', 'libdbusmenu-qt5.so', 'libhipchatdbusscripting.so', 'libcanberra.so', 'libvorbis.so', 'libxcb-sync.so', 'libxslt.so', 'liblzma.so', 'libqxmpp.so', 'libvorbisfile.so', 'libssl.so', 'libpng16.so', 'libsqlite3.so', 'libz.so', 'libadl_sdk.so', 'libtdb.so', 'libuuid.so', 'libcrypto.so', 'libcanberraSoundNotification.so', '/', 'u', 's', 'r', '/', 'l', 'i', 'b', '/', 'j', 'v', 'm', '/', 'd', 'e', 'f', 'a', 'u', 'l', 't', '-', 'j', 'a', 'v', 'a', '/', 'l', 'i', 'b', '/', 'j', 'c', 'o', 'n', 's', 'o', 'l', 'e', '.', 'j', 'a', 'r']
> {code}



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