উত্তর:
আমি যখন ম্যাজেন্টো ডেটা-মাইগ্রেশন-সরঞ্জামটি ব্যবহার করে ডেটা আমদানি করার পরে কিছু বিভাগ আপডেট করার চেষ্টা করেছি তখন আমি কেবল একই ত্রুটি (অ্যাসিমেট্রিক লেনদেন রোলব্যাক) পাচ্ছিলাম।
একটি ম্যানুয়াল রিইন্ডেক্স আমার জন্য সমস্যাটি স্থির করেছে, ম্যানুয়ালি আপনার ডেটাবেসকে ssh এর মাধ্যমে পুনরায় সূচি দেওয়ার জন্য আপনার ম্যাজেন্টো ইনস্টলেশন থেকে নিম্নলিখিত কমান্ডটি চালান:
php bin/magento indexer:reindex
এটি যদি আপনাকে সহায়তা না করে তবে আপনি নিম্নলিখিত বাগের প্রতিবেদনটি একবার দেখতে চান: https://github.com/magento/magento2/issues/3720
সমস্যাটি সমাধান হয়েছে এবং নিম্নলিখিত পদক্ষেপগুলি রয়েছে
নিম্নলিখিত কমান্ডটি ব্যবহার করে রিইনডেক্স
php bin/magento indexer:reindex
কমান্ডের নীচে চালান
rm -rf var/cache/*
rm -rf var/page_cache/*
rm -rf var/generation/*
var/generation
ফোল্ডারে অনুমতি দিন ।
এছাড়াও, আপনি যখন বাহ্যিক অনুসন্ধান ইঞ্জিন (সোলার বা ইলাস্টিকসার্ক) কনফিগার করেছেন এবং পণ্য / বিভাগ সংরক্ষণের সময় এটি অনুপলব্ধ থাকে তখন এই ত্রুটিটি এমন পরিস্থিতিতে দেখা দেয়।
এটি সম্পূর্ণ সমাধান নয় তবে এটি আপনাকে কিছু ক্ষেত্রে সমস্যার উত্স সনাক্ত করতে সহায়তা করতে পারে। এই শ্রেণীর চারপাশে সেভ প্লাগইন মন্তব্য করুন Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Product
এবং আপনি ব্যতিক্রম ত্রুটি দেখতে পাবেন
আপনি যদি ফ্ল্যাট ক্যাটালগ ব্যবহার করছেন এবং পুনর্নির্মাণ কাজ না করে, তবে সম্ভবত আপনি মাইএসকিউএল সারি সীমাবদ্ধতার বাইরে চলে গেছেন । আপনি হয় ফ্ল্যাট ক্যাটালগ বন্ধ করতে হবে বা বৈশিষ্ট্যগুলির সংখ্যাকে হ্রাস করতে হবে যা বিকল্পগুলি used in product listing
এবং used for sorting in product listing
বিকল্পগুলি ব্যবহার করে ।
এই ইস্যুটির জন্য আমার কাছে আরও একটি সমাধান রয়েছে এবং এটি সহজ।
কেবলমাত্র আপনি পণ্য সম্পর্কিত সূচকের জন্য পুনর্নির্দেশ মোড পরিবর্তন করতে পারেন -> সময়সূচী অনুসারে আপডেট।
আমি মাইএসকিএল ইনোডিবি ক্লাস্টারের সাথে অসমমিত ট্রানজেকশন রোলব্যাক ত্রুটির সমস্যার মুখোমুখি হচ্ছি, সুতরাং আমি পণ্য এবং বিভাগটি সংরক্ষণ করতে পারিনি এবং যখন আমি ত্রুটি বার্তাটি প্রিন্ট করি তখন
`SQLSTATE[HY000]: General error: 1787 Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions., query was: CREATE TEMPORARY TABLE IF NOT EXISTS `catalog_product_index_eav_temp` LIKE `catalog_product_index_eav_tmp
দীর্ঘ অনুসন্ধানের পরে এই প্রতিশ্রুতিটি আমার সমস্যার সমাধান করে। https://github.com/magento/magento2/commit/4b51ee19353fb39263991f38663ad2fabcb1ce84#diff-08d583954f382bd67bd8f89c7c2345c6