You error seems to indicate there is a lock object in session. Can you try 
check by printing the session.keys() before saving the session?

On Monday, 17 September 2012 12:54:54 UTC-5, mweissen wrote:
>
> Yes, I have stored a lot of information in session, but only strings and 
> dicts. The application works fine on my development pc (a windows 7 pc). 
> The problem arises after I have put the application on the target machine 
> (ubuntu with apache2).
>
> 2012/9/17 Massimo Di Pierro <massimo....@gmail.com <javascript:>>
>
>> Looks like the problem is that you try pus something in session that is 
>> not pickleable.
>>
>>
>> On Monday, 17 September 2012 02:59:54 UTC-5, mweissen wrote:
>>
>>> From the /var/log/apache2/error.log:
>>>
>>> [Mon Sep 17 09:39:09 2012] [error] ERROR:web2py:Traceback (most recent 
>>> call last):
>>> [Mon Sep 17 09:39:09 2012] [error]   File "/users/www-data/web2py/gluon/
>>> **main.py", line 547, in wsgibase
>>> [Mon Sep 17 09:39:09 2012] [error]     
>>> session._try_store_on_disk(**request, 
>>> response)
>>> [Mon Sep 17 09:39:09 2012] [error]   File "/users/www-data/web2py/gluon/
>>> **globals.py", line 686, in _try_store_on_disk
>>> [Mon Sep 17 09:39:09 2012] [error]     cPickle.dump(dict(self), 
>>> response.session_file)
>>> [Mon Sep 17 09:39:09 2012] [error]   File "/usr/lib/python2.7/copy_reg.*
>>> *py", line 70, in _reduce_ex
>>> [Mon Sep 17 09:39:09 2012] [error]     raise TypeError, "can't pickle %s 
>>> objects" % base.__name__
>>> [Mon Sep 17 09:39:09 2012] [error] TypeError: can't pickle lock objects
>>> [Mon Sep 17 09:39:09 2012] [error]
>>>
>>>
>>> 2012/9/17 Paolo <paolo....@gmail.com>
>>>
>>> Dear all,
>>>> occasionally, I am getting this error too (with and without lazy_table)
>>>> Which OS are you using ?
>>>> Could you post your db model?
>>>>
>>>> Paolo
>>>>
>>>>
>>>> On Monday, September 17, 2012 7:21:42 AM UTC+2, mweissen wrote:
>>>>>
>>>>> I have read some threads about this error message -  I got it too:
>>>>>
>>>>> Version  web2py™ (2, 0, 9, datetime.datetime(2012, 9, 13, 23, 51, 
>>>>> 30), 'stable')  Traceback 
>>>>>
>>>>> 1.
>>>>> 2.
>>>>> 3.
>>>>> 4.
>>>>> 5.
>>>>> 6.
>>>>> 7.
>>>>> 8.
>>>>> 9.
>>>>> 10.
>>>>> 11.
>>>>> 12.
>>>>> 13.
>>>>> 14.
>>>>> 15.
>>>>> 16.
>>>>> 17.
>>>>> 18.
>>>>> 19.
>>>>> 20.
>>>>> 21.
>>>>> 22.
>>>>> 23.
>>>>> 24.
>>>>> 25.
>>>>> 26.
>>>>> 27.
>>>>>
>>>>> Traceback (most recent call last):
>>>>>   File "/users/www-data/web2py/gluon/****main.py", line 547, in wsgibase
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     session._try_store_on_disk(req****uest, response)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>   File "/users/www-data/web2py/gluon/****globals.py", line 686, in 
>>>>> _try_store_on_disk
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     cPickle.dump(dict(self), response.session_file)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>   File "/usr/lib/python2.7/copy_reg.**p**y", line 74, in _reduce_ex
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     getstate = self.__getstate__
>>>>>   File "/users/www-data/web2py/gluon/****dal.py", line 7344, in 
>>>>> __getattr__
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     self.__allocate()
>>>>>   File "/users/www-data/web2py/gluon/****dal.py", line 7337, in __allocate
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     self._record = self._table[int(self)]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>   File "/users/www-data/web2py/gluon/****dal.py", line 7624, in 
>>>>> __getitem__
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     return self._db(self._id == key).select(limitby=(0,1)).fir****st()
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>   File "/users/www-data/web2py/gluon/****dal.py", line 8766, in select
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     return adapter.select(self.query,fiel****ds,attributes)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>   File "/users/www-data/web2py/gluon/****dal.py", line 2094, in select
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     return super(SQLiteAdapter, self).select(query, fields, attributes)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>   File "/users/www-data/web2py/gluon/****dal.py", line 1594, in select
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     return self._select_aux(sql,fields,at****tributes)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>   File "/users/www-data/web2py/gluon/****dal.py", line 1559, in 
>>>>> _select_aux
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     self.execute(sql)
>>>>>   File "/users/www-data/web2py/gluon/****dal.py", line 1671, in execute
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     return self.log_execute(*a, **b)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>   File "/users/www-data/web2py/gluon/****dal.py", line 1665, in 
>>>>> log_execute
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     ret = self.cursor.execute(*a, **b)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> ProgrammingError: Cannot operate on a closed database.
>>>>>
>>>>>
>>>>> Any hints?
>>>>> Regards, Martin
>>>>>
>>>>>  -- 
>>>>
>>>

-- 



Reply via email to