यह लेख बताता है कि आपका अनुक्रम सिंक से बाहर हो सकता है और आपको इसे मैन्युअल रूप से सिंक में वापस लाना होगा।
URL बदलने की स्थिति में लेख का एक अंश:
<ब्लॉकक्वॉट>अगर आपको PostgreSQLडेटाबेस में डेटा डालने का प्रयास करते समय यह संदेश मिलता है:
ERROR: duplicate key violates unique constraint
<ब्लॉकक्वॉट> इसका मतलब यह है कि जिस तालिका के साथ आप काम कर रहे हैं उसमें प्राथमिक कुंजी अनुक्रम किसी भी तरह से सिंक से बाहर हो गया है, संभवतः एक बड़े पैमाने पर प्रक्रिया (या उन पंक्तियों के साथ कुछ) के कारण। इसे "बग बायडिजाइन" कहें, लेकिन ऐसा लगता है कि डंप फ़ाइल से पुनर्स्थापित करने के बाद आपको प्राथमिक कुंजी इंडेक्स को मैन्युअल रूप से रीसेट करना होगा। किसी भी दर पर, यह देखने के लिए कि क्या आपके मान समन्वयित नहीं हैं, इन दो आदेशों को चलाएँ:
SELECT MAX(the_primary_key) FROM the_table;
SELECT nextval('the_primary_key_sequence');
<ब्लॉकक्वॉट> यदि पहला मान दूसरे मान से अधिक है, तो आपका क्रम समन्वयित नहीं है। अपने पीजी डेटाबेस का बैकअप लें (बस मामले में), फिर यह कमांड चलाएँ:
SELECT setval('the_primary_key_sequence', (SELECT MAX(the_primary_key) FROM the_table)+1);
<ब्लॉकक्वॉट> यह अनुक्रम को अगले उपलब्ध मान पर सेट कर देगा जो अनुक्रम में किसी भी मौजूदा प्राथमिक कुंजी से अधिक है।