2016-03-11 1 views
0

Je travaille sur une application héritée incorporant actuellement Jackrabbit 2.6, qui à un moment donné utilisé le versionnage jackrabbit (je ne suis même pas sûr si c'était avec cette version ou une autre version jackrabbit). Actuellement, le versionnement est toujours présent dans la configuration et les tables de base de données correspondantes (*_BINVAL, *_BUNDLE, *_NAMES, *_REFS) sont toujours présentes. Je souhaite que la gestion des versions soit désactivée et complètement supprimée car elle prend de l'espace dans notre base de données et ralentit la collecte des gares Jackrabbit avec une exécution vide sur le gestionnaire de persistance des versions. Je ne peux pas trouver d'informations sur la façon de procéder.Comment désactiver le versionnage dans Jackrabbit?

Est-il sûr de supprimer simplement la balise <Versioning>...</Versioning> de la configuration XML et de supprimer les tables associées? Comment dois-je procéder?

+0

Je pense que la balise '' est obligatoire. – awd

+0

Et qu'en est-il des données stockées dans les tables? Est-il sûr de simplement les tronquer? – Adam

+0

dont je ne suis pas sûr. Je dirais que vous devriez supprimer les versions des nœuds individuels en utilisant jackrabbit VersionManager api. – awd

Répondre

0

Malheureusement, la version est obligatoire. Par conséquent, nous devions nettoyer autant d'informations de version que possible. Dans mon cas, il s'est avéré que le mélange: mixins versionnable a disparu (probablement en raison de changements dans les types de nœuds personnalisés et OCM), laissant les propriétés liées à la version derrière. Ce que je fini par faire:

  1. itérer sur le dépôt toute suppression de l'historique de version pour chaque noeud (soit en retirant le mixin ou les propriétés de versioning dans mon cas), l'enregistrement de la session après chaque X des noeuds modifiés.
  2. Fermez le référentiel Jackrabbit et renommez les tables de gestion des versions (* _BINVAL, * _BUNDLE, * _NAMES, * _REFS) dans la base de données pour les masquer de Jackrabbit.
  3. Démarrez à nouveau Jackrabbit - les tables de la base de données ont été recréées et trois nœuds par défaut sont vides
  4. Après avoir confirmé que le référentiel est intact, supprimez les tables masquées.

La collecte des ordures est devenue plus rapide - nous sommes passés de deux semaines à 4 heures. L'historique des versions contenait des millions d'entrées, totalement inutiles.