2016-04-12 5 views
1

Je suis en train d'écrire un script pour mettre à jour une page de confluence via l'API REST, en utilisant:Confluence REST problème de mise à jour API: Propriété avec synchronisation rev nom n'est pas une chaîne

curl -u user:password -X PUT -H 'Content-Type: application/json' -d'{"id":173390846,"type":"page","title":"test4","body":{"storage":{"value":"hello world","representation":"storage"}},"version":{"number":10}}' http://confluence.private.com/rest/api/content/173390846 

mais parfois je reçois l'erreur suivante . Cela peut arriver si j'ai édité et enregistré manuellement la page, ou cela peut se produire sans que la page ait été éditée manuellement.
Parfois, si je lance à nouveau la mise à jour, cela fonctionne, et parfois il persiste et donne la même erreur. Le script im write est plus grand que l'exemple de hello world, mais si j'ai créé une nouvelle page vierge, l'ai mise à jour via l'API REST, l'ai éditée manuellement et j'ai essayé de la mettre à jour (avec une version incrémentée). erreur mentionnée ci-dessus.

Je n'ai trouvé aucune mention de la propriété sync-rev autre que dans cette doc, mais cela ne m'a pas aidé à résoudre mon problème.

Notre version de confluence est 5.9.6

Pourquoi ai-je cette erreur, et que puis-je faire/changement afin qu'il en va?

Répondre

1

J'ai le même problème et j'ai demandé de l'aide dans la communauté atlassienne. Vous pouvez suivre ma question au https://answers.atlassian.com/questions/38379050/how-to-update-confluence-pages-using-rest-api

En outre, j'ai contacté le support car il me semble que ce problème est un bug à la confluence. Je vous tiendrai au courant de la réponse du support.

Edit: Voici ce que Atlassian suggère:

  1. sauvegarde la base de données depuis ce besoin base de données manuelle supprimer
  2. exécuter la requête SQL suivante:
    // identifier le nombre d'entrées doivent être supprimées
    sélectionnez count (distinctid) à partir de CONTENTPROPERTIES où propertyname = 'sync-rev';

    // supprimer toutes les entrées supprimer de CONTENTPROPERTIES où propertyname = 'sync-rev';
  3. restart Confluence exemple
  4. Vérifiez si le problème persiste

S'il vous plaît noter que je ne l'ai pas encore vérifié leur solution.

+0

Comme ces propriétés ont tendance à être créées même sur les nouvelles pages, je suppose qu'elles seront recréées après un nettoyage. Donc je ne pense pas que ce soit une solution. Cela ressemble plus à une solution de contournement. Des nouvelles sur un correctif? – AlexWerz

+0

Le problème semble être résolu avec la version 5.9.14: https://jira.atlassian.com/browse/CONFSERVER-41493 – marcelscheid