A quick and dirty way to check what is going on is to add debug statements in the web2py dal.py code.
I had a similiar issue, and the quickest way I found to check why compute failed was to remove the "except KeyError" in the "def _lisitfy" of dal.py. Then an error is thrown whenever the compute method fails, and you can view all the data, session, etc... in web2py Good luck! -- Richard

