I've found out that a cursor maps to a odbc hstmt.   I also found out that 
Teradata supports 16 open result sets (hstmt) for each session.   So it 
appears that web2py is reusing the same database session for multiple 
simultaneous requests, or isn't closing them correctly before starting the 
next request.     
 
To rephrase my question a bit,  Does a web2py connection equate to a 
database session ?   Does a new request reserve a connection until it's 
complete, i.e another request can't issue database statements 
simultaneously on the same connection ?
 
So, I think the closing of a connection, or the returning of it to the 
pool, is not working properly on Teradata.  Perhaps the cursors are staying 
open and new cursors are created instead of reusing the existing ones (with 
pool_size>0).   I see there is a self._adapter.close() line in dal.py (line 
8056)  so I may need to add something to the TeradataAdapter to make this 
more robust.
 
Does that sound right ?  Thanks.
 

 

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to