We have a customized effort logging program running under Portal. When the user decides not to save the change and just click "logoff" from portal to exit without change.
Normally, the user session will be terminated immediately in backend once the user logs off portal. This will then automatically clean up all session buffer and application ENQUEUE via ABAP webdynpro Controller routine.
Occasionally, it is found that the session is not terminated immediately in ECC backend system. The session still exists in ECC under SM04 and the previous ENQUEUE still exists in the ENQUEUE table under SM12.
When the user logs back into the portal to perform the effort logging again immediately after, the application will have error complaining the employee still locked in the ENQUEUE table by the previous transaction.
Such leftover session will be automatically cleaned up by ECC backend system after 30 minutes timeout. Even no action is done, the user can resume to the Effort Logging function after 30 min. after the record is locked.