Comment renommer une collection Verity dans ColdFusion?
-
03-07-2019 - |
Question
Impossible de renommer une collection Verity existante dans ColdFusion sans la supprimer, la recréer et la reconstruire. Le problème, c’est que j’ai de très grandes collections que je préférerais ne pas supprimer ni reconstruire à partir de zéro. Quelqu'un at-il une astuce pratique pour cette énigme?
La solution
Pour la partie Verity (sans prendre en compte ColdFusion), il est assez facile de détacher une collection, de la renommer et de la reconnecter:
rcadmin> indexdetach
Server Alias:YourDocserver
Index Alias:CollectionName
Index Type [(c)ollection,(t)ree,(p)arametric,(r)ecommendation]:c
Save changes? [y|n]:y
<<Return>> SUCCESS
rcadmin> collpurge
Collection alias:CollectionName
Admin Alias:AdminServer
Save changes? [y|n]:y
<<Return>> SUCCESS
rcadmin> adminsignal
Admin Alias:AdminServer
Type of signal (Shutdown=2,WSRefresh=3,RestartAllServers=4):4
Save changes? [y|n]:y
<<Return>> SUCCESS
Vous pouvez maintenant renommer le répertoire de la collection et vous reconnecter. (Si vous n'êtes pas sûr de l'une de ces valeurs, vérifiez-les avec collget avant de le mettre hors ligne.)
rcadmin> collset
Admin Alias:AdminServer
Collection Alias:NewCollectionName
Modify Type (Update=0, Insert=1):1
Path:
Gateway[(o)dbc|(n)otes|(e)xchange|(d)ocumentum|(f)ilesys|(w)eb|o(t)her]:
Style Alias:
Document Access (Public=0,Secure=1,Anonymous=2):
Query Parser [(s)imple|(b)oolPlus|(f)reeText|(o)ldFreeText|O(l)dSimple|O(t)her]:
Description:
Max. Search Time(msecs):
Save changes? [y|n]:y
rcadmin> indexattach
Index Alias:NewCollectionName
Index Type [(c)ollection,(t)ree,(p)arametric,(r)ecommendation]:c
Server Alias:YourDocserver
Modify Type (Update=0, Insert=1):1
Index State (offline=0,hidden=1,online=2):2
Threads (default=3):
Save changes? [y|n]:y
<<Return>> SUCCESS
Il devrait maintenant apparaître à nouveau dans la vue "hierarchy".
Vous pouvez également utiliser l'option "Fusionner". utilitaire pour copier le contenu d’une collection à une autre, sous un nouveau nom.
Autres conseils
Je ne crois pas qu'il existe un moyen facile de renommer une collection Verity. Vous pouvez toujours utiliser
<cfcollection action="map" ...>
pour attribuer un alias à une collection existante, à condition que vous n'ayez pas besoin de réutiliser le nom d'origine.
On dirait que ce n'est pas possible. Supprimer et recréer la collection avec le nom souhaité semble être la seule approche disponible.