2015-04-28 8 views
5

हर बार जब मैं डीबी संरचना से कुछ बदलता हूं, तो मैं माइग्रेट कमांड (मेवेन प्लगइन या कमांड लाइन टूल के साथ) के साथ एक निष्पादित करने के लिए टाइमस्टैम्प का उपयोग करके एक नया माइग्रेशन फ़ाइल बना देता हूं। पूरी तरह से काम करता है, लेकिन एक उत्पादन डेटाबेस में, एक ही DB संरचना के साथ लेकिन डेटा जोड़ा साथ मैं यह त्रुटि आई:उत्पादन डेटाबेस पर फ्लाईवे - माइग्रेशन चेकसम मिस्चैच

Failed to execute goal org.flywaydb:flyway-maven-plugin:3.2.1:migrate (main) on project eee-ejb: org.flywaydb.core.api.FlywayException: Validate failed. Migration Checksum mismatch for migration 1430224929 [ERROR] -> Applied to database : -1639634536 [ERROR] -> Resolved locally : -1412099238

कैसे मैं एक उत्पादन डेटाबेस जहां डाटा लगातार जोड़ा जाता है में flyway उपयोग कर सकते हैं?

+0

क्या आपको इसका समाधान मिला? –

उत्तर

4

इसका डेटा जोड़ने के साथ कुछ लेना देना नहीं है। यह माइग्रेशन स्क्रिप्ट है जिसे संशोधित किया जा रहा है। जांच करने के लिए एक जगह गिट सीआरएलएफ सामान्यीकरण मुद्दे है।

अद्यतन: फ्लाईवे 4.0 अब स्वचालित रूप से इसका ख्याल रखता है।

+0

समस्या माइग्रेशन का अनुक्रम था, मैं इसके लिए टाइमस्टैम्प का उपयोग कर रहा हूं, उत्तर के लिए धन्यवाद। – Claudinei

+0

स्थानीय पर काम करने वाली एक ही समस्या हो रही है लेकिन उत्पादन डीबी में नहीं, यह ठीक करने का कोई और तरीका है? –

3

मूल रूप से चल रही स्क्रिप्ट अब बदल दी गई है। क्या आप वाकई परिवर्तन आप चाहते थे होता क्या है कि कर रहे हैं,

./flyway repair

इस चलाने के परिवर्तन को स्वीकार, मेटाडाटा तालिका अपडेट हो जाएगा और त्रुटि नहीं मिलेगा।

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