Généralement, mélanger des fichiers sans redémarrer CouchDB lui-même est comme déplacer la chaise sous votre grand-mère pendant qu'elle est assise dessus. Tôt ou tard, elle remarquera ... Je suppose que vous avez déplacé une sous-section du dossier couchdb, et pas assez pour que les vues fonctionnent correctement.
Si vous GET $COUCH/$DB/_design/$DDOC/_info
vous verrez un champ "signature": "e5c78acfda577dfba5abb602c432ead2"
, où la chaîne hexadécimale est liée au nom du fichier de vue sous-jacent pour ce ddoc.
Si vous utilisez GET $COUCH/_config
en utilisant les informations d'identification d'administrateur, vous pouvez voir le chemin d'accès à la vue & répertoires d'index. Vous devriez vous assurer que ceux-ci n'ont pas été foutu pendant vos remises.
Dans mon cas, il ressemble à ceci:
"database_dir": "/usr/local/var/lib/couchdb",
"index_dir": "/usr/local/var/lib/couchdb",
et index_dir
je peux voir /usr/local/var/lib/couchdb/.testy_design/mrview/e5c78acfda577dfba5abb602c432ead2.view
. C'est sur le maître 1.3.0-a donc l'emplacement est différent pour 1.2.0 et ci-dessous. Quoi qu'il en soit, les paramètres database_dir et index_dir dans config doivent correspondre à ce qui se trouve sur le disque. Regarde ça.
Vous devez remonter l'ensemble des fichiers /usr/local/var/lib/couchdb
(y compris les vues si vous ne souhaitez pas les reconstruire) et non certains sous-composants de celui-ci. Sinon, il peut s'agir simplement d'un problème de mise en cache et après le redémarrage de CouchDB, les choses vont s'arranger. Typiquement, Couch se fie à la mise en cache et ne s'attend pas à ce que la chaise soit déplacée :-).
Regardez les journaux. –