Je suis conscient que CouchDB identifie les documents qui sont en conflit après la réplication. Est-ce que CouchDB gère la détection des conflits différemment pour les documents _design que pour les documents ordinaires? Par exemple, je modifie un document _design dans DB1. Je modifie ensuite le même document _design dans DB2. Je réplique ensuite DB1 à DB2. Je m'attendrais à ce que CouchDB identifie un conflit, mais après la réplication, Couch ne renvoie aucun conflit.CouchDB _design détection de conflit de documents
Répondre
Les documents de conception sont exactement comme les documents normaux, d'où le nom "documents de conception" au lieu de "programmes de canapé" ou autres.
Si vous apportez des modifications identiques à des documents identiques dans différentes bases de données, vous aurez aucun conflit. Running couchapp push
pourrait créer cette situation, si vous poussez la même application à deux bases de données différentes (et ils avaient le même _rev
pour commencer).
Sinon, vous obtiendrez un conflit, que ce soit un document de conception ou non. Bien sûr, canapé va "promouvoir" une révision comme la version canonique, mais si vous vérifiez _conflicts
dans une vue, vous les verrez. (Pour voir les documents de conception en vue, vous devez également activer l'option include_design
.)
{ "_id": "_design/example"
, "views":
{ "conflicts":
{ "options": {"include_design": true}
, "map": "function(doc) { if(doc._conflicts) emit(doc._id, doc._conflicts); }"
}
}
}
Trouver ddocs en conflit en utilisant une analyse de tessiture:
?startkey="_design/"&endkey="_design0"
- 1. conflit couchdb document identique
- 2. python couchdb révision conflit
- 3. Comment obtenez-vous une liste de tous les documents _design pour une base de données donnée dans CouchDB?
- 4. Filtrage CouchDB documents liés
- 5. Lien documents dans CouchDB
- 6. Récupération de documents multiples CouchDB avec couchdb-python
- 7. Détection conflit DownValue/OwnValue
- 8. CouchDB réplique sans supprimer de documents
- 9. CouchDb - Empêcher couchDb de fournir une vue
- 10. Count documents liés à CouchDB
- 11. Supprimer plusieurs documents dans CouchDB
- 12. CouchDB, obtenez 10 derniers documents
- 13. CouchDB empêche la réplication en cas de conflit
- 14. Résoudre les conflits de réplication des documents supprimés dans CouchDB
- 15. documents supprimés en vue CouchDB
- 16. Détection de conflit sur git rebase
- 17. gestionnaires de mise à jour CouchDB
- 18. Création d'une vue CouchDB qui retourne un tableau de valeurs uniques d'un ensemble de documents
- 19. CouchDB: Workflow pour créer des documents?
- 20. L'affichage de CouchDB URL montre: CouchDB: {"error": "not_found", "raison": "missing"} ... Pourquoi?
- 21. lot Importation de documents JSON à Apache CouchDB
- 22. Obtenir tous les documents de conception dans CouchDB
- 23. Regroupement des vues dans les documents de conception dans CouchDB
- 24. mises à jour automatique de documents à CouchDB
- 25. Sélectionner les documents qui n'ont pas de clé dans CouchDB
- 26. CouchDB sort lors de l'interrogation d'une vue
- 27. Comment renvoyer tous les documents de conflit d'une base de documents Notes?
- 28. Comment éviter les dépendances cycliques entre les documents dans CouchDB
- 29. problème avec CouchDB gestionnaire de _rewrite
- 30. Fonction de détection d'opérateurs mathématiques en conflit dans VB6
Nous avons une vue de _conflicts pour tous nos non_design documents. Cependant, les documents _design ne fonctionnent pas avec les vues. Toute suggestion sur la façon d'obtenir une liste de tous les documents _design en conflit après une réplication réussie serait grandement appréciée. Merci. – JimZ
J'ai mis à jour la réponse. Les documents de conception * fonctionnent * avec les vues, mais c'est un paramètre optionnel, et la valeur par défaut est 'false'. Une fois que vous l'activez, vous verrez des conflits ddoc. (Vous pouvez également mettre ceci dans une vue totalement séparée, à vous.) – JasonSmith
Je devais mettre des options à côté des vues, pas dans une vue, il a ensuite effectué toutes les vues. J'utilise la version 1.2.0 et je n'ai rien vu dans les journaux de changements pour suggérer que l'on peut mettre des options dans des vues individuelles. –