I was looking into the process column of the v$session of the connections created by a connection pool for a .Net application using odp.net. It was surprising to me is that I was not able to map all values in the process column (pid:tid) with the existing threads. Basically, pid was same for all connections in the connection pool but tid was different but then all of these tids were not existing.
I want to understand how process column of v$session gets managed in the case of connection pool? Is it something that whichever threads have initiated the connections in the connection pool, it stores their thread number in the process column but then even after that thread has been removed, the connection in the connection pool persists and it keeps serving incoming requests.