FYI, I can reproduce it and create KARAF-3415[1] to track it, and I'm on it

[1]https://issues.apache.org/jira/browse/KARAF-3415
-------------
Freeman(Yue) Fang

Red Hat, Inc. 
FuseSource is now part of Red Hat



On 2014-12-11, at 下午10:54, Paul Spencer wrote:

> JB,
> Have you been able to reproduce the issue?
> 
> Paul Spencer
> 
> 
> On Dec 9, 2014, at 2:30 PM, Jean-Baptiste Onofré <[email protected]> wrote:
> 
>> Thanks Paul,
>> 
>> I gonna investigate this issue.
>> 
>> Regards
>> JB
>> 
>> On 12/09/2014 08:23 PM, Paul Spencer wrote:
>>> JB,
>>> One way to reproduce this issue:
>>> - Start Karaf with bin/karaf
>>> - Dump the Heap Memory with a tool like jmap
>>> - Open a second command shell and execute the following command several 
>>> times:
>>>    $KARAF_HOME/bin/client -u karat instance:list
>>> - Dump the Heap Memory with a tool like jmap into a second output file
>>> - Compare the two files with the Eclipse Memory Analyzer
>>> 
>>> Paul Spencer
>>> 
>>> 
>>> On Dec 9, 2014, at 12:52 PM, Jean-Baptiste Onofré <[email protected]> wrote:
>>> 
>>>> Can you try to session.close(false) just in case after the waitFor on the 
>>>> channel ?
>>>> 
>>>> Regards
>>>> JB
>>>> 
>>>> On 12/09/2014 06:46 PM, Paul Spencer wrote:
>>>>> I have a test case that connects to a Karaf 3.0.2 server via SSH to
>>>>> reset the environment prior to making WebService calls to the server.
>>>>> After upgrading from Karaf 2.3.4 I started noticing
>>>>> "java.lang.OutOfMemoryError: Java heap space” errors.  In looking around
>>>>> I noticed 60,000+
>>>>> org.apache.karaf.shell.security.impl.SecuredCommandProcessorImpl objects
>>>>> in the HeapDump when the Karaf server had only run a few rounds of 
>>>>> testing.
>>>>> 
>>>>> 1) Although I have searched without finding a definitive answer, Is this
>>>>> a known issue?
>>>>> 
>>>>> 2) I am using the default Karaf 3.0.2 installation with cxf-jaxbws and
>>>>> some custom bundles.  In addition to the attached screen image from the
>>>>> Eclipse Memory Analyzer, what additional information should I provided?
>>>>> 
>>>>> ***
>>>>> * Code to programmatically connect to Karaf via ssh and issue reset
>>>>> commands.
>>>>> ***
>>>>> String host = “localhost”;
>>>>> int port = 8101;
>>>>> String user = "karaf";
>>>>> String password = "karaf";
>>>>> 
>>>>> SshClient client = null;
>>>>> String line = null;
>>>>> try {
>>>>> client = SshClient.setUpDefaultClient();
>>>>> client.start();
>>>>> ConnectFuture future = client.connect(user, host, port);
>>>>> future.await();
>>>>> ClientSession session = future.getSession();
>>>>> session.addPasswordIdentity(password);
>>>>> session.auth().verify();
>>>>> ClientChannel channel = session.createExecChannel(command);
>>>>> InputStream is = new FileInputStream("/dev/null");
>>>>> PipedInputStream pi = new PipedInputStream();
>>>>> PipedOutputStream po = new PipedOutputStream(pi);
>>>>> InputStreamReader isr = new InputStreamReader(pi);
>>>>> LineNumberReader lr = new LineNumberReader(isr);
>>>>> channel.setIn(is);
>>>>> channel.setOut(po);
>>>>> channel.setErr(System.err);
>>>>> channel.open();
>>>>> channel.waitFor(ClientChannel.CLOSED, 0);
>>>>> line = lr.readLine();
>>>>> 
>>>>> lr.close();
>>>>> is.close();
>>>>> } catch (InterruptedException e) {
>>>>> e.printStackTrace();
>>>>> throw e;
>>>>> } catch (IOException e) {
>>>>> e.printStackTrace();
>>>>> throw e;
>>>>> } catch (Exception e) {
>>>>> e.printStackTrace();
>>>>> throw e;
>>>>> } finally {
>>>>> client.stop();
>>>>> }
>>>>> 
>>>>> 
>>>>> Paul Spencer
>>>>> 
>>>> 
>>>> --
>>>> Jean-Baptiste Onofré
>>>> [email protected]
>>>> http://blog.nanthrax.net
>>>> Talend - http://www.talend.com
>>> 
>> 
>> -- 
>> Jean-Baptiste Onofré
>> [email protected]
>> http://blog.nanthrax.net
>> Talend - http://www.talend.com
> 

Reply via email to