Paul Winkler wrote:

I'm trying to figure out how to mount my main storage read-only
with zope 2.7.0.  I'm starting to suspect that it's impossible.
I tried a few things below....

---------------------------------------------
ATTEMPT #1.

I find this in the zope.conf examples:

# Directive: read-only-database
#
# Description:
#     This causes the main Zope FileStorage-backed ZODB to be opened in
#     read-only mode.
#
# Default: off
#
# Example:
#
#     read-only-database on


... so I uncomment that line and restart. Zope starts OK but the database is evidently still writeable, I can still change anything.

Is this a bug in the zope.conf examples, or a bug in zope?


------------------------------------------------- ATTEMPT #2.

Apparently there is another read-only flag within each database config
section. So, I try that. In my zope.conf:

<zodb_db main>
   # Main FileStorage database
   cache-size 20000
   mount-point /
   <filestorage>
     path $INSTANCE/var/Data.fs
     read-only on
   </filestorage>
</zodb_db>


When I start with this config, zope dies during product initialization which apparently wants to commit:

------
2004-05-19T19:08:10 ERROR(200) Zope Couldn't install Formulator
Traceback (most recent call last):
File "/home/pw/Zope-2.7.0/lib/python/OFS/Application.py", line 785, in install_product
get_transaction().commit()
File "/home/pw/Zope-2.7.0/lib/python/ZODB/Transaction.py", line 232, in commit
self._commit_begin(jars, subjars, subtransaction)
File "/home/pw/Zope-2.7.0/lib/python/ZODB/Transaction.py", line 340, in _commit_begin
jar.tpc_begin(self)
File "/home/pw/Zope-2.7.0/lib/python/ZODB/Connection.py", line 692, in tpc_begin
self._storage.tpc_begin(transaction)
File "/home/pw/Zope-2.7.0/lib/python/ZODB/BaseStorage.py", line 142, in tpc_begin
raise POSException.ReadOnlyError()
ReadOnlyError
Traceback (most recent call last):
File "/home/pw/Zope-2.7.0/lib/python/Zope/Startup/run.py", line 49, in ?
run()
File "/home/pw/Zope-2.7.0/lib/python/Zope/Startup/run.py", line 19, in run
start_zope(opts.configroot)
File "/home/pw/Zope-2.7.0/lib/python/Zope/Startup/__init__.py", line 51, in start_zope
starter.startZope()
File "/home/pw/Zope-2.7.0/lib/python/Zope/Startup/__init__.py", line 230, in startZope
Zope.startup()
File "/home/pw/Zope-2.7.0/lib/python/Zope/__init__.py", line 46, in startup
_startup()
File "/home/pw/Zope-2.7.0/lib/python/Zope/App/startup.py", line 93, in startup
OFS.Application.initialize(application)
File "/home/pw/Zope-2.7.0/lib/python/OFS/Application.py", line 279, in initialize
initializer.initialize()
File "/home/pw/Zope-2.7.0/lib/python/OFS/Application.py", line 306, in initialize
self.install_products() File "/home/pw/Zope-2.7.0/lib/python/OFS/Application.py", line 553, in install_products
return install_products(app)
File "/home/pw/Zope-2.7.0/lib/python/OFS/Application.py", line 584, in install_products
folder_permissions, raise_exc=debug_mode)
File "/home/pw/Zope-2.7.0/lib/python/OFS/Application.py", line 785, in install_product
get_transaction().commit()
File "/home/pw/Zope-2.7.0/lib/python/ZODB/Transaction.py", line 232, in commit
self._commit_begin(jars, subjars, subtransaction)
File "/home/pw/Zope-2.7.0/lib/python/ZODB/Transaction.py", line 340, in _commit_begin
jar.tpc_begin(self)
File "/home/pw/Zope-2.7.0/lib/python/ZODB/Connection.py", line 692, in tpc_begin
self._storage.tpc_begin(transaction)
File "/home/pw/Zope-2.7.0/lib/python/ZODB/BaseStorage.py", line 142, in tpc_begin
raise POSException.ReadOnlyError()
ZODB.POSException.ReadOnlyError


-----------------------------------------

So, am I just plain S.O.L.?  Is this impossible?


(Note: a similar message was sent earlier to dirstorage-users, but experimentation has shown me that the storage implementation doesn't seem to matter... i get the same result with filestorage, directorystorage, or clientstorage.)




we had a simmilar problem. Eventually we spved it by patching zope.
However I am not sure whether the problem was caused by Products (we do it for a plone site ) or by Zope itself.


what we changed is on a windows box that is not running under linux. thats why I do not include it here. However I can rboot that machine and send it to you if you like.
Robert


_______________________________________________
Zope-Dev maillist - [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )

Reply via email to