Galera,

 a quem interessar possa...
 Nos nossos Zope temos vários mount_points diferentes, uma
 para cada cliente. Assim os dados não se misturam e ficam em
 arquivos Data.fs disitintos no file system. 
 Na hora do pack dá preguiça, e como bom preguiçoso, fiz o
 seguinte script de pack automático. Se interessar a alguém
 o código abaixo está em domínio público:

<code name="autopack">
print "Auto-pack utility"

# grab the DatabaseChooser object
db = context.Control_Panel.Database

# browse through all mountpoints and pack each one
# I am giving one day of slack to avoid conflict with
# today's transactions 
for each_db in db.getDatabaseNames():  
   db_ref = db[each_db]
   old_size = db_ref.db_size()
   try:
       db_ref.manage_pack(days=1)
   except:
       print "Failed to pack %s"%each_db
   else:
       new_size = db_ref.db_size()
       print "Packed %s : %s -> %s"%(each_db, old_size, new_size)

return printed
</code>

Detalhe, lembrem-se de dar um Proxy role de Manager para o script
antes de executá-lo.
 
Para automatizar a parada, nada como a dupla dinâmica: crontab e wget.

Abração,
Senra

-------------
Rodrigo Senra
GPr Sistemas

Responder a