私たちは開発用のデータベースを準備するための大きな巨大なサイトを持っています。すべての古いCMFEditionsバージョンをパージする
すべてのコンテンツアイテムの古い履歴バージョンをどのように削除できますか?このようにして、デベロッパーコンピュータに転送するために必要なデータのサイズを大幅に削減することができます。
Ploneは4.0
私たちは開発用のデータベースを準備するための大きな巨大なサイトを持っています。すべての古いCMFEditionsバージョンをパージする
すべてのコンテンツアイテムの古い履歴バージョンをどのように削除できますか?このようにして、デベロッパーコンピュータに転送するために必要なデータのサイズを大幅に削減することができます。
Ploneは4.0
・ホープこのヘルプ(私は通常、3「」は、少なくともいくつかの履歴を保持するために使用します)。デバッグモードで
スタートZEOクライアント:
bin/client1 debug
を
次のスクリプトを実行します。keulは、上記のヒントとしてここ
from DateTime import DateTime
from Products.CMFCore.utils import getToolByName
from Products.CMFEditions.utilities import dereference
policy = getToolByName(self.context, 'portal_purgepolicy')
catalog = getToolByName(self.context, 'portal_catalog')
for count, brain in enumerate(catalog()):
obj = brain.getObject()
# only purge old content
if obj.created() < (DateTime() - 30):
obj, history_id = dereference(obj)
policy.beforeSaveHook(history_id, obj)
print 'purged object ' + obj.absolute_url_path()
私はPlone 3の詳細をしました(私は、これはPloneの4の上に少し変更されたことを知っていることに注意してください)。
Plone 3.3の履歴はすべてportal_historiesstorage/repoオブジェクト内に格納されています。ここに_shadowStorageサブオブジェクトがあります。
この永続オブジェクトを削除すると、必要に応じてゼロから作成されています。いくつかの番号に番号をportal_purgepolicyし、設定するいくつかの方法
は、_shadowStorageを削除する命令です次に:
del app.yoursiteid.portal_historiesstorage._shadowStorage
import transaction ; transaction.commit()
保証はありません。それが何を削除しているのか分かりません。どうやら、あなたはすべての歴史を取り払っています。
Alec Mitchellによれば、シャドウストレージを取り除くだけでメタデータが消去され、ストレージリポジトリ内のエントリを消去する必要がある場合は、他の処理が必要です。詳細については、https://github.com/plone/Products.CMFEditions/issues/28#issuecomment-113591175を参照してください。 – hvelarde
私が直接(とにかく、おそらく私の場合にRTFMのケースだったが、何に)その開放のZopeサイト(http://localhost:8080/が言う)を見つけ、次のようにナビゲート:
が「パック」がdatabaを提供するページに私を導きましたX日以上経過したすべての履歴を削除します。これは治療のように働いた!
これでCMFEditionのエントリは削除されません。これはデータベースをパックするだけです。履歴には2つの異なる種類があります:ここで最初に尋ねたCMFEditionベースのものと、 "Pack"リンクでクリアしているZODB Historyです。 – jkubaile
スーパー!これはPlone 3.3でも動作します!ちょうどテスト! –
テスト後にこれとマージします:http://collective-docs.readthedocs.org/en/latest/hosting/zope.html#creating-a-cleaned-data-drop –
このユーティリティをCMFEditionsに追加するとよいでしょうそれをどこかのZMIに公開する。 –