একটি সময় আগে, প্রায় ext4 এই সম্ভাব্য অশুচি আনমাউন্ট পরে খালি ফাইল যাব চমত্কার সংকলিত আপ কিছু আলোচনা হয়েছে এই প্রবন্ধে । মূলত, বিলম্বিত বরাদ্দের কারণে লেখাগুলি লেখার ক্ষেত্রে এক্সট জার্নালের ডিফল্ট কমিট ব্যবধানের (5 সেকেন্ড) ব্যবস্থার চেয়ে অনেক বেশি সময় রাইটিং ক্যাশে রাখা যায়।
সমস্যাগুলি এমন কোনও প্যাচে স্থির করা হয়েছে যা নির্দিষ্ট পরিস্থিতিতে বরাদ্দকে আটকে রাখে, ফলে ডিফল্টরূপে সর্বাধিক 5 সেকেন্ড পরে ডেটা ডিস্কে চাপিয়ে দেয়।
আমি ভাবছি যখন কোনও অ্যাপ্লিকেশন কোনও ফাইলের বিদ্যমান অংশগুলিকে ওভাররাইট করে, নিজেই ফাইল কেটে ফেলা বা সংযোজন না করে। এটি কি 5 সেকেন্ডের মধ্যেও ডিস্কে বাধ্য হবে?
এটি কোনও ফাইলের সাথে যুক্ত হওয়ার চেয়ে আলাদা পরিস্থিতি বলে মনে হয়: সংযোজন করার সময় ফাইলের আকার পরিবর্তন হয় যা একটি মেটাডেটা পরিবর্তন; অতএব, একটি জার্নাল প্রতিশ্রুতি 5 সেকেন্ডের মধ্যে আবশ্যক হবে, এবং ডেটা = অর্ডার করার কারণে, ডেটাটি তার আগে সুরক্ষা সংক্রান্ত উদ্বেগের কারণে লিখতে হবে (অন্যথায় অন্য ব্যবহারকারীদের মুছে ফেলা ফাইলগুলির কিছু অংশ সংযুক্ত মালিকের কাছে প্রদর্শিত হতে পারে) ফাইল)।
কেবলমাত্র ফাইল ডেটা ওভাররাইট করার সময়, মেটাডাটা জার্নাল কমিট করার আগে ডেটা রাইটিং হওয়ার কোনও কারণ নেই কারণ পুরানো ডেটা একই হিসাবে একই ব্যবহারকারীর অন্তর্গত। তাহলে কি লেখার পরেও প্রতিশ্রুতিবদ্ধ হওয়ার আগে ঘটে যায়, বা জার্নাল কমিটের ব্যবধানের চেয়ে আরও বেশি বিলম্বিত হতে পারে? তা হলে আর কতক্ষণ?
আপডেট: আমি জানি যে সঠিক কাজটি করার সময়, এটি fsync () ব্যবহার করার পরে এই সমস্ত অপ্রাসঙ্গিক। (এটি এক্সট 4 এবং ডেটা হ্রাস সম্পর্কে সমস্ত আলোচনার মূল কারণ ছিল - সমস্যাটি কেবলমাত্র সম্পর্কিত অ্যাপ্লিকেশনগুলি fsync () নয়, সঠিক মুহুর্তে নয়)) আমি নিজের আবেদনটি লিখছি না, আমি জিজ্ঞাসা করছি কারণ আমার সমস্ত অ্যাপ্লিকেশন সঠিকভাবে কাজ করে কিনা তা জানি না এবং আমি এই জাতীয় "বিপজ্জনক" লেখার জন্য একটি আনুমানিক সময়সীমা জানতে চাই। জিজ্ঞাসা করার কারণটি হ'ল আমার গ্রাফিক্স ড্রাইভার নিয়মিত কার্নেল প্যানিকগুলি সৃষ্টি করে এবং আমি জানতে চাই যে আমাকে গত 5 সেকেন্ডের ডেটা লেখার চেয়ে বেশি চিন্তা করতে হবে কিনা।