Re: File too large

Jason Madden <[email protected]> Tue, 7 Jan 2020 14:48:43 -0600
Newsgroups gmane.comp.web.zope.zodb
Message-ID <[email protected]>
You don't provide much information for us to go on, so this is all conjectu=
re.

That code hasn't changed in quite some time (since 5.0a0, 2016), and even t=
hen it was just adding a lock, so I would be more suspicious of the local e=
nvironment. How do you have the cache configured? It's possible you have a =
very large cache size specified, and when the code attempts to seek to adju=
st the file size, it's exceeding a 32-bit limit. This is especially likely =
if you are running a 32-bit Python or have otherwise built it without large=
 file support.

The code attempts to gracefully handle bad cache files from the line in que=
stion. It first removes the file that caused the error and then recreates i=
t. There should be logging to that effect. If so, the file on disk you see =
after this doesn't reflect the file that caused the error (but an older bad=
 file might).

~Jason

> On Jan 6, 2020, at 10:37, Smart <[email protected]> wrote:
>=20
> Good morning,
>=20
>=20
> Traceback (most recent call last):
>  File "/home/gator/django-hotsauce-1.0-mainline/lib/notmm/controllers/wsg=
i.py", line 95, in get_response
>    self._response =3D callback(request, *args, **kwargs)
>  File "/home/gator/django-hotsauce-1.0-mainline/lib/notmm/dbapi/orm/decor=
ators.py", line 24, in _wrapper
>    wsgi_app =3D controller_class(req, dbname)
>  File "/home/gator/django-hotsauce-1.0-mainline/lib/notmm/controllers/zod=
b.py", line 21, in __init__
>    self.setup_database(db_name)
>  File "/home/gator/django-hotsauce-1.0-mainline/lib/notmm/controllers/zod=
b.py", line 28, in setup_database
>    self.db =3D self.zodb_backend_class(db_name)
>  File "/home/gator/django-hotsauce-1.0-mainline/lib/notmm/dbapi/orm/zodb_=
compat.py", line 18, in __init__
>    super(ClientStorageProxy, self).__init__(db_name, **kwargs)
>  File "/home/gator/django-hotsauce-1.0-mainline/lib/notmm/dbapi/orm/_data=
baseproxy.py", line 41, in __init__
>    self.conn =3D db_connection_cls(db_name)
>  File "/home/erob/src/libschevo-4.1/lib/schevo/backends/zodb.py", line 46=
, in __init__
>    self._storage =3D ClientStorage((self.host, int(self.port)))
>  File "/usr/local/lib/python2.7/dist-packages/ZEO/ClientStorage.py", line=
 234, in __init__
>    cache, var, client, storage, cache_size)
>  File "/usr/local/lib/python2.7/dist-packages/ZEO/ClientStorage.py", line=
 1270, in open_cache
>    return ClientCache(None, cache_size)
>  File "/usr/local/lib/python2.7/dist-packages/ZEO/cache.py", line 211, in=
 __init__
>    self._initfile(fsize)
>  File "/usr/local/lib/python2.7/dist-packages/ZEO/cache.py", line 340, in=
 _initfile
>    seek(ofs)
> IOError: [Errno 27] File too large
>=20
> Any thoughts about how to fix this unexpected problem with ZODB clientsto=
rage ?
>=20
> Thank you in advance,
> Jack
>=20
>=20
> --
> Jack Bortone <[email protected]>
>=20
> --=20
> You received this message because you are subscribed to the Google Groups=
 "zodb" group.
> To unsubscribe from this group and stop receiving emails from it, send an=
 email to [email protected].
> To view this discussion on the web visit https://groups.google.com/d/msgi=
d/zodb/20200106113738.c4337790150b9e594dd16c70%40yandex.com.

--=20
You received this message because you are subscribed to the Google Groups "=
zodb" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to [email protected].
To view this discussion on the web visit https://groups.google.com/d/msgid/=
zodb/3EAF9CC9-E4AF-4AEE-8131-C2E242E973B8%40nextthought.com.