The problem may be one of these
1)First of all check if session.start is set to true in app/config/core.php
The problem arises when session has not been started in other controller or the view/method you are redirected to
2)Try adding seesion_start(); in the beforeFilter of controller you are redirected to.
Or may be one or all of below in core.php file
I would say check if the session has started or not
In core php
1)Please check if seesion is started on top of page,check session id if it is changing on redirect.
2)Check header(location );
The url passed shouldn’t contain the protocol information i.e.http or https