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.dipie...@gmail.com>

> 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