users@grizzly.java.net

Re: Odd class-loading issues

From: Igor Minar <iiminar_at_gmail.com>
Date: Mon, 6 Apr 2009 07:50:04 -0700

I create an OSGi bundle via maven. The resulting bundle is attached if
you want to check the MANIFEST.MF file.

The odd thing is that the issue occurs only sometimes. When I start
glassfish and try to hit my filter, it gets loaded just fine and
everything works. But when I run a load test via faban, I start seeing
the issue usually between 10th and 30th second of the load test when
the server is warming up. After that the issue doesn't occur.

It just doesn't make sense to me that grizzly is able to reach the
class and create an instance, but later on it fails a few times while
doing the same thing.

/i





On Apr 6, 2009, at 2:27 AM, Oleksiy Stashok wrote:

> Hi,
>
> looks like it could be some OSGi related issue?
> How do you attach your classes com.igorminar.grizzlysendfile.* to
> Glassfish?
>
> Thanks.
>
> WBR,
> Alexey.
>
> On Apr 6, 2009, at 9:13 , Igor Minar wrote:
>
>> $ java -version
>> java version "1.6.0_07"
>> Java(TM) SE Runtime Environment (build 1.6.0_07-b06-153)
>> Java HotSpot(TM) 64-Bit Server VM (build 1.6.0_07-b06-57, mixed mode)
>>
>> client mode
>>
>> /i
>>
>>
>> On Apr 5, 2009, at 11:15 PM, Richard Corsale wrote:
>>
>>>
>>> Which jvm are you using?
>>>
>>>
>>> Sent from my iPhone
>>>
>>> On Apr 6, 2009, at 12:49 AM, Igor Minar <iiminar_at_gmail.com> wrote:
>>>
>>> Hi folks,
>>>
>>> while working with gf v3b43 I started noticing occasional
>>> connection errors and messages in the logs that I captured below.
>>> The error occurs only 1-5 times in 1k requests, usually while the
>>> server is warming up.
>>>
>>> In my case the error occurs when grizzly is trying to initialize
>>> DefaultAsyncExecutor, but I don't understand why it's happening
>>> only on these rare occasions.
>>>
>>> Anyone has seen something similar?
>>>
>>> /i
>>>
>>>
>>>
>>> [#|2009-04-05T21:33:29.684-0700|SEVERE|glassfish|
>>> javax.enterprise.system.core|_ThreadID=16;_ThreadName=Thread-2;|
>>> Unable to load class com.igorminar.grizzlysendfile.SendfileFilter
>>> java.lang.ClassNotFoundException:
>>> com.igorminar.grizzlysendfile.SendfileFilter
>>> at
>>> org
>>> .apache
>>> .felix
>>> .framework
>>> .searchpolicy.R4SearchPolicyCore.findClass(R4SearchPolicyCore.java:
>>> 198)
>>> at
>>> org
>>> .apache
>>> .felix
>>> .framework
>>> .searchpolicy.R4SearchPolicy.findClass(R4SearchPolicy.java:45)
>>> at
>>> org
>>> .apache
>>> .felix
>>> .framework
>>> .searchpolicy.ContentClassLoader.loadClass(ContentClassLoader.java:
>>> 109)
>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>>> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)
>>> at java.lang.Class.forName0(Native Method)
>>> at java.lang.Class.forName(Class.java:247)
>>> at com.sun.grizzly.util.ClassLoaderUtil.load(ClassLoaderUtil.java:
>>> 166)
>>> at com.sun.grizzly.util.ClassLoaderUtil.load(ClassLoaderUtil.java:
>>> 154)
>>> at
>>> com
>>> .sun
>>> .grizzly.arp.DefaultAsyncExecutor.init(DefaultAsyncExecutor.java:
>>> 104)
>>> at
>>> com
>>> .sun
>>> .grizzly.arp.DefaultAsyncExecutor.<init>(DefaultAsyncExecutor.java:
>>> 96)
>>> at
>>> com
>>> .sun
>>> .grizzly
>>> .arp.DefaultAsyncHandler.newAsyncExecutor(DefaultAsyncHandler.java:
>>> 100)
>>> at
>>> com
>>> .sun
>>> .grizzly
>>> .arp
>>> .DefaultAsyncHandler
>>> .newAsyncProcessorTask(DefaultAsyncHandler.java:91)
>>> at
>>> com
>>> .sun
>>> .grizzly
>>> .arp
>>> .DefaultAsyncHandler
>>> .getAsyncProcessorTask(DefaultAsyncHandler.java:118)
>>> at
>>> com
>>> .sun
>>> .grizzly.arp.DefaultAsyncHandler.handle(DefaultAsyncHandler.java:
>>> 137)
>>> at
>>> com
>>> .sun
>>> .grizzly.arp.AsyncProtocolFilter.execute(AsyncProtocolFilter.java:
>>> 169)
>>> at
>>> com
>>> .sun
>>> .enterprise
>>> .v3
>>> .services
>>> .impl
>>> .GlassfishProtocolChain
>>> .executeProtocolFilter(GlassfishProtocolChain.java:71)
>>> at
>>> com
>>> .sun
>>> .grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:103)
>>> at
>>> com
>>> .sun
>>> .grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:89)
>>> at
>>> com
>>> .sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:
>>> 76)
>>> at
>>> com
>>> .sun
>>> .grizzly
>>> .ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:67)
>>> at
>>> com
>>> .sun
>>> .grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:
>>> 57)
>>> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:
>>> 303)
>>> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>>> at java.util.concurrent.ThreadPoolExecutor
>>> $Worker.runTask(ThreadPoolExecutor.java:885)
>>> at java.util.concurrent.ThreadPoolExecutor
>>> $Worker.run(ThreadPoolExecutor.java:907)
>>> at java.lang.Thread.run(Thread.java:637)
>>> Caused by: java.lang.ClassNotFoundException:
>>> com.igorminar.grizzlysendfile.SendfileFilter
>>> at
>>> org
>>> .apache
>>> .felix
>>> .framework
>>> .searchpolicy
>>> .R4SearchPolicyCore.findClassOrResource(R4SearchPolicyCore.java:486)
>>> at
>>> org
>>> .apache
>>> .felix
>>> .framework
>>> .searchpolicy.R4SearchPolicyCore.findClass(R4SearchPolicyCore.java:
>>> 185)
>>> ... 26 more
>>> |#]
>>>
>>> [#|2009-04-05T21:33:29.701-0700|SEVERE|glassfish|
>>> javax.enterprise.system.core|_ThreadID=16;_ThreadName=Thread-2;|
>>> The log message is null.
>>> java.lang.NullPointerException
>>> at
>>> com
>>> .sun
>>> .grizzly
>>> .arp.DefaultAsyncExecutor.invokeFilters(DefaultAsyncExecutor.java:
>>> 157)
>>> at
>>> com
>>> .sun
>>> .grizzly
>>> .arp.DefaultAsyncExecutor.interrupt(DefaultAsyncExecutor.java:136)
>>> at
>>> com
>>> .sun.grizzly.arp.AsyncProcessorTask.doTask(AsyncProcessorTask.java:
>>> 88)
>>> at com.sun.grizzly.http.TaskBase.run(TaskBase.java:189)
>>> at java.util.concurrent.ThreadPoolExecutor
>>> $Worker.runTask(ThreadPoolExecutor.java:885)
>>> at java.util.concurrent.ThreadPoolExecutor
>>> $Worker.run(ThreadPoolExecutor.java:907)
>>> at java.lang.Thread.run(Thread.java:637)
>>> |#]
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe_at_grizzly.dev.java.net
>>> For additional commands, e-mail: users-help_at_grizzly.dev.java.net
>>>
>>>
>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe_at_grizzly.dev.java.net
>>> For additional commands, e-mail: users-help_at_grizzly.dev.java.net
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe_at_grizzly.dev.java.net
>> For additional commands, e-mail: users-help_at_grizzly.dev.java.net
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_grizzly.dev.java.net
> For additional commands, e-mail: users-help_at_grizzly.dev.java.net
>