পোস্টগ্র্যাসকিউএল: ট্রানসেটের পরে ডিস্ক স্পেস প্রকাশ করা হয়নি


12

আমার কাছে TRUNCATEএকটি বিশাল (~ 120Gb) টেবিল রয়েছে files:

TRUNCATE files;
VACUUM FULL files;

সারণির আকার 0, তবে কোনও ডিস্কের স্থান প্রকাশিত হয়নি। আমার হারিয়ে যাওয়া ডিস্কের জায়গাটি কীভাবে দাবি করা যায়?

আপডেট: ডিস্ক স্পেসটি আমার পক্ষ থেকে কোনও পদক্ষেপ ছাড়াই ~ 12 ঘন্টা পরে প্রকাশ করা হয়েছিল। আমি উবুন্টু 8.04 সার্ভার ব্যবহার করি।


আমি "এটি ভ্যাকুয়াম!" করার পরামর্শ দিচ্ছিলাম, তবে আপনি এখনই যা করেছেন তা বিবেচনা করে, আমি এটিকে পিজি-হ্যাকার বা পিজি-পারফরম্যান্স তালিকার যে কোনও একটিতে নিয়ে যাওয়ার পরামর্শ দিই (এবং থ্রেডের সাথে আবার যুক্ত হয়েছি বা একবার আপনি উত্তর পেয়েছেন) এক).
ডেনিস ডি বার্নার্ডি

এই লিঙ্কটি ( postgresql.1045698.n5.nabble.com/… ) আপনার জন্য কোনও পরামর্শ দেয়? টেবিল অ্যাক্সেস বা অনুরূপ কিছু এখনও থাকতে পারে।
ড্রোলকোসোসোস

@ ড্রকোলোসোস: আমি উত্সটিতে একটি মন্তব্য পড়েছি (একটি মন্তব্য যা আমি এখনই খুঁজে পাচ্ছি না) তাতে বলা হয়েছে যে পোস্টগ্র্যাসএসকিউএল যে সংযোগগুলি সংঘটিত হতে চলেছে তার সমস্ত সংযোগকে অবহিত করেছে এবং এটি প্রয়োজনীয় সংস্থানগুলি লক করে দিয়েছে। (টেবিল নিজেই, সূচীগুলি, সিকোয়েন্সগুলি এবং টোস্ট টেবিলগুলি সহ বেশ কয়েকটি রয়েছে)) আমি যথেষ্ট নিশ্চিত যে এক্সিকিউটিট্রুনকেট () এর মাধ্যমে সনাক্ত করে মন্তব্যটি আমি আগে পেয়েছি, তবে আমি সে সম্পর্কে 100% ইতিবাচক নই।
মাইক শেরিল 'ক্যাট রিক্যাল'

উত্তর:


12

উত্সের মন্তব্য অনুসারে , truncateএকটি নতুন, খালি স্টোরেজ ফাইল তৈরি করে এবং প্রতিশ্রুতিবদ্ধ সময়ে পুরানো স্টোরেজ ফাইলটি মুছে দেয়। (দস্তাবেজগুলি পরামর্শ দেয় "স্টোরেজ ফাইল" কেবলমাত্র একটি ফাইল যতদূর ওএস সম্পর্কিত, তবে আমি সম্ভবত পরিভাষাটি ভুল বুঝি be)

সম্পর্কের জন্য একটি নতুন খালি স্টোরেজ ফাইল তৈরি করুন এবং এটিকে পুনরায় নকশার মান হিসাবে নির্ধারণ করুন। পুরানো স্টোরেজ ফাইলটি কমিট করার সময় মোছার জন্য নির্ধারিত।

যেহেতু এটি কোনও ফাইল মুছে ফেলছে বলে মনে হচ্ছে, তাই আমি এমন কয়েকটি ক্ষেত্রে কল্পনা করতে পারি যাতে অন্তর্নিহিত অপারেটিং সিস্টেমটি সেই স্থানটি তাত্ক্ষণিকভাবে মুক্ত করতে পারে না। আমি ধারণা করি যে কিছু ক্ষেত্রে স্টোরেজ ফাইলটি উইন্ডোজের অধীনে পুনর্ব্যবহারযোগ্য বিনে শেষ হতে পারে। তবে আমার ক্ষেত্রে পোস্টগ্রিসএসকিউএল ৯ এর অধীনে একটি টেবিল কেটে ফেলা উইন্ডোজের অধীনে ফ্রিস্পেসকে তত্ক্ষণাত বাড়িয়ে তুলেছে।

ছাঁটাইটি ওয়াল লগেও রেকর্ড করা আছে। আমি জানি না যে তার কতটা প্রভাব ফেলতে পারে।


2
এটি অনুমেয় যে অন্য একটি ব্যাকএন্ড প্রক্রিয়াতে এখনও ফাইলটি খোলার জন্য একটি ফাইল বর্ণনাকারী রয়েছে। যদি এটি আবার ঘটে থাকে তবে আমি অন্যান্য সমস্ত ব্যাকএন্ড প্রক্রিয়াগুলি বন্ধ করার চেষ্টা করব, এটি দেখার জন্য কোনও পার্থক্য রয়েছে কিনা।
পিটার আইজেনট্রাট

আমি নিশ্চিত যে আমি পড়লাম যে এক্সিকিউটিট ট্রাঙ্কেট () এটি ঘটতে পারে না তা নিশ্চিত করার কথা বলে মনে করা হয়। পুরানো স্টোরেজ ফাইলটি শেষ পর্যন্ত মুছতে প্রয়োজনীয় সংস্থানগুলি লক করার সমস্ত অংশ। তবে উত্সটিতে আমি এটি কোথায় পেয়েছি তা আমি জানি না। আমি কেবল এটি অনলাইনে ব্রাউজ করছি; এভাবে হারিয়ে যাওয়া সহজ।
মাইক শেরিল 'ক্যাট রিক্যাল'
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.