2012-11-09 18 views
6

इस तरह मैं दस्तावेज़ मिलता है और नए संशोधन के लिए जाँच:अद्यतन संघर्ष की वजह से दस्तावेज़ नहीं हटाया जा सकता

curl -X DELETE http://localhost/cdb/characters/e6b153975174556adc0b344e9a000a7f?rev=1-25b25539eca3944ef8d8f20748ed4902 

response: 
{"error":"conflict","reason":"Document update conflict."} 

क्यों, अगर:

curl http://localhost/cdb/characters/e6b153975174556adc0b344e9a000a7f?revs=true 

returns: 
{"_id":"e6b153975174556adc0b344e9a000a7f","_rev":"1-25b25539eca3944ef8d8f20748ed4902","name":"Barack Obama","position":"US President"} 

तो मैं इस तरह है कि दस्तावेज़ को हटाने का प्रयास संशोधन के साथ कोई समस्या नहीं प्रतीत होती है, क्या डिलीट पर कोई दस्तावेज़ संघर्ष है?

क्या कोई ऐसा दस्तावेज़ निकालने में कोई समस्या है जिसमें कोई अन्य संशोधन नहीं है?

+0

नहीं हो रही है, CouchDB एक समस्या एक दस्तावेज जब को हटाने की जरूरत नहीं है आपके मामले में केवल एक संशोधन है। यह केवल तभी हो सकता है, यदि कोई नया संशोधन हो। आप किस कॉच डीबी संस्करण के साथ काम कर रहे हैं? आपका http अनुरोध सही प्रतीत होता है। – awenkhh

उत्तर

5

पहला, चूंकि आपका कोड सही दिखता है, जांचें कि वास्तव में आपके पैराम भेजे जा रहे हैं।

अन्यथा, आप अगर एक संशोधन चिह्नित है की जाँच करनी चाहिए के रूप में नष्ट:

curl -X GET http://127.0.0.1:5984/kina/ \ 
04ce1239166b841ae8a317897ec45b11?revs_info=true 
{ 
    "_id":"04ce1239166b841ae8a317897ec45b11", 
    "_rev":"3-bc27b6930ca514527d8954c7c43e6a09", 
    "_revs_info": 
    [ 
    { 
    "rev":"3-bc27b6930ca514527d8954c7c43e6a09", 
    "status":"available" 
    }, 
    { 
    "rev":"2-eec205a9d413992850a6e32678485900", 
    "status":"deleted" 
    }, 
    { 
    "rev":"1-967a00dff5e02add41819138abb3284d", 
    "status":"available" 
    } 
    ] 
} 

नष्ट कर दिया संस्करणों से छुटकारा पाने के लिए, आपको _purge उपयोग करना होगा। उदाहरण के लिए:

curl -X POST http://127.0.0.1:5984/kina/_purge/ \ 
    -H "content-type:application/json" \ 
    -d ’{"7341477ce373f9cc76f351e598001cdd": 
      ["2-5c7fb5dfeaf6f7cea149922fa1cdaf96"] 
     }’ 

{ 
    "purge_seq":1,"purged": 
    { 
    "7341477ce373f9cc76f351e598001cdd": 
    ["2-5c7fb5dfeaf6f7cea149922fa1cdaf96"] 
    } 
} 
+0

अजीब, प्रॉक्सी मैं अनुरोध भेज रहा था स्ट्रिंग के अंत में तर्क जोड़ नहीं रहा था। :/ – Kristian

+0

आह - तो यह एक मुद्दा है जो सोफे से संबंधित नहीं है और आपने सबकुछ ठीक से किया है ;-) – awenkhh

+0

या, अपना समय बर्बाद करने के लिए खेद है! :/ – Kristian

9

किसी दस्तावेज़ को जो अन्य संशोधन है किया जाता है हटाया जा रहा है:
curl -X DELETE http://couchhost:5984/couchdb/docid\?rev\=rev_number

यह मैं मदद की जब
{"error":"conflict","reason":"Document update conflict."}

संबंधित मुद्दे