I am seeing the same error.  I believe this happens when appengine shuts
down your server and then restarts the server.  I have read the exception is
harmless, but the slow start seems to indicate different.  My startup time
takes about 8 seconds.

I have created cron, that runs every minute.  This seems to prevent
appengine from shutting down my server very often.  I probably still have
the appengine shut down my server about 20+ times a day, but that is better
than every request.  I still have some delays on the first request after a
cron restarts, but it about 3 seconds.

I have also thread talking about these issues.

--Jeffrey



On Sat, Nov 28, 2009 at 9:00 AM, Donny <[email protected]> wrote:

> I use JPA in my servlet in my app, but some times when I query data
> google app engine will report some exception(following is my log from
> app engine's admin log. ResultServlet is my servlet), the exception is
> about:
>
> "com.google.appengine.repackaged.com.google.common.base.FinalizableReferenceQueue
> <init>
> INFO: Failed to start reference finalizer thread. Reference cleanup
> will only occur when new references are created."
>
> this exception was discussed in this group and i found no one gave the
> solution, every one said it
> is not affect the performance of application. but from my log i found
> it affected my performance.
>
> 11-28 08:37AM 44.050 survey.ResultServlet doGet: begin query data
> I 11-28 08:37AM 44.703
>
> com.google.appengine.repackaged.com.google.common.base.FinalizableReferenceQueue
> $SystemLoader loadFinalizer: Not allowed to access system class loader
> I 11-28 08:37AM 44.718
> com.google.appengine.repackaged.com.google.common.base.internal.Finalizer
> getInheritableThreadLocalsField: Couldn't access
> Thread.inheritableThreadLoc
> I 11-28 08:37AM 44.721
>
> com.google.appengine.repackaged.com.google.common.base.FinalizableReferenceQueue
> <init>: Failed to start reference finalizer thread. Reference
> cleanup...
> I 11-28 08:37AM 45.242 survey.ResultServlet doGet: query data used
> time :1188
> I 11-28 08:37AM 45.617 survey.ResultServlet doGet: render page used
> time : 375
>
> some times this exception will disappear, every thing go well, here is
> the log:
>
> 11-28 08:30AM 33.170 survey.ResultServlet doGet: begin query data
> I 11-28 08:30AM 33.206 survey.ResultServlet doGet: query data used
> time :36
> I 11-28 08:30AM 33.212 survey.ResultServlet doGet: render page used
> time : 6
>
> if the exception occurs, my page will be rendered to client very slowly
> (it will costs >3s), but without the exception page render is less
> than 1s. And I found this exception occurs after some minute when my
> application has no incoming request from client. because my
> application is not in very high concurrency environment, so the
> problem occurs in 50%  time.
>
>
> my code is like this:
>
> public class ResultServlet extends HttpServlet {
>
>        private static final Logger log = Logger.getLogger
> (ResultServlet.class.getName());
>
>        public void doGet(HttpServletRequest req, HttpServletResponse resp)
> throws IOException, ServletException {
>
>                List<Reply> list = null;
>                EntityManager em = EMF.get().createEntityManager();
>
>                log.info("begin query  data");
>                long start = System.currentTimeMillis();
>                try {
>
>                        list = em.createQuery("select r from Reply as
> r").getResultList();
>
>                        log.info("query data  used time :" + String.valueOf
> (System.currentTimeMillis() - start));
>
>                        start = System.currentTimeMillis();
>
>                        ....code to deal list data.
>
>                        req.getRequestDispatcher("result.jsp").forward(req,
> resp);
>                        log.info("render page used time : " +
> String.valueOf
> (System.currentTimeMillis() - start));
>                } finally {
>                        em.close();
>                }
>        }
> }
>
>
> any one can help me?
>
>
> --
>
> You received this message because you are subscribed to the Google Groups
> "Google App Engine for Java" group.
> To post to this group, send email to
> [email protected].
> To unsubscribe from this group, send email to
> [email protected]<google-appengine-java%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/google-appengine-java?hl=en.
>
>
>

--

You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.


Reply via email to