Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 341206 - Stop order is wrong in HandlerWrapper
Summary: Stop order is wrong in HandlerWrapper
Status: RESOLVED FIXED
Alias: None
Product: Jetty
Classification: RT
Component: server (show other bugs)
Version: 7.3.1   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: 7.3.x   Edit
Assignee: Simone Bordet CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-29 06:28 EDT by Simone Bordet CLA
Modified: 2011-03-29 06:30 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Simone Bordet CLA 2011-03-29 06:28:01 EDT
HandlerWrapper is-a AggregateLifeCycle and as such manages dependent beans.

Currently, HandlerWrapper.doStop() first calls super.doStop() and then stops the handler it wraps.

However, some handler like ConnectHandler depend on beans (such as the thread pool) that may be stopped before the handler itself is stopped, causing warnings such as "1 threads could not be stopped", or "Dispatched Failed!", or race conditions where the handler thinks it is fully working, but other components are already stopped.

HandlerWrapper.doStop() should first stop the wrapped handler and then forward the call to super.
Comment 1 Simone Bordet CLA 2011-03-29 06:30:20 EDT
Fixed by stopping the handler first and then calling super.