users@grizzly.java.net

Odd class-loading issues

From: Igor Minar <iiminar_at_gmail.com>
Date: Sun, 5 Apr 2009 21:49:57 -0700

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)
|#]