don't shallow protocol decoding exception, re-throw and propagate to the session IoHandler
support observe option