https://issues.apache.org/bugzilla/show_bug.cgi?id=51735

             Bug #: 51735
           Summary: welcome page deadlock at startup
           Product: Tomcat 7
           Version: 7.0.16
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Catalina
        AssignedTo: dev@tomcat.apache.org
        ReportedBy: andrew.chap...@brighterworking.com
    Classification: Unclassified


I have two tomcat servers:
- Server 1 has a welcome page which checks for a certain URL parameter and if
it is missing redirects to server 2. 
- Server 2 checks for the same URL parameter and if it is present redirects to
server 1.

My tomcat 7.0.16 installations seem to check the welcome page during start-up.
Where the result is a redirect, they also seem to check the redirect URL
responds correctly. If the response is bad, the server waits a while and then
retries.

Unfortunately, this means that if both servers go down then neither can start.
They both end up rechecking their welcome page forever (or until a server
start-up timeout).

It would be nice if the start-up checks on the welcome page passed if an
external redirect (i.e. to a host not served by this instance) was received as
the result.

I don't have the source code available, but the stack leading to the welcome
page stack is:

StandardHostValve.invoke(Request, Response) line: 164    
ErrorReportValve.invoke(Request, Response) line: 100    
AccessLogValve.invoke(Request, Response) line: 563    
StandardEngineValve.invoke(Request, Response) line: 118    
CoyoteAdapter.service(Request, Response) line: 403    
Http11Processor.process(SocketWrapper<Socket>) line: 301    
Http11Protocol$Http11ConnectionHandler.process(SocketWrapper<Socket>,
SocketStatus) line: 162    
Http11Protocol$Http11ConnectionHandler.process(SocketWrapper<Socket>) line: 140 
JIoEndpoint$SocketProcessor.run() line: 309    
ThreadPoolExecutor$Worker.runTask(Runnable) line: 886    
ThreadPoolExecutor$Worker.run() line: 908    
TaskThread(Thread).run() line: 662    

In case it's relevant, I'm also using various bits of spring security and
struts2 filters around the welcome page.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to