If I am doing a big time consuming transaction(transaction of million/billion records), for which completion time is not fix. Now during this period my session got expired, which put me out of it, without completion of successful transaction.
Now I am looking for a solution which keep track of this transaction time and also at the same time update session expiry limit.
Personally, I would delegate the long process to another thread or even another process that could care less about the session. Record the job and its progress/completion status in the database, and give the user a page to go to that displays that status. That way they can be off doing other stuff, even go to lunch, and come back later to check how things are going.