আমি টেলিং করছিলাম /var/log/system.log
এবং টেক্সটটির আকস্মিক প্রাচীরটি লক্ষ্য করলাম। কাছাকাছি তাকিয়ে দেখলাম, এটি কিছু সংরক্ষণের চেষ্টা করার সময় ক্যালেন্ডার এজেন্টের একটি ত্রুটি ছিল:
Nov 18 11:42:45 rainbow-dash.local CalendarAgent[12321]: CoreData: error: (11) Fatal error. The database at /Users/blackl/Library/Calendars/Calendar Cache is corrupted. SQLite error code:11, 'database disk image is malformed'
Nov 18 11:42:45 rainbow-dash.local CalendarAgent[12321]: Core Data: annotation: -executeRequest: encountered exception = Fatal error. The database at /Users/blackl/Library/Calendars/Calendar Cache is corrupted. SQLite error code:11, 'database disk image is malformed' with userInfo = {
NSFilePath = "/Users/blackl/Library/Calendars/Calendar Cache";
NSSQLiteErrorDomain = 11;
}
2 বার্তা কয়েকবার পুনরাবৃত্তি
Nov 18 11:42:49 rainbow-dash.local CalendarAgent[12321]: [com.apple.calendar.store.log.subscription] [WARNING: CalSubscriptionSession :: persistError :: save failed]
এই সম্পূর্ণ ক্রমটি লগ জুড়ে বহুবার পুনরাবৃত্তি হয়।
file
প্রশ্নযুক্ত ফাইলটি একটি বলেছিল SQLite 3.x database
, তাই আমি কিছুটা অনুসন্ধান করেছি এবং সেগুলি পরীক্ষা করার উপায় নিয়ে এসেছি।
blackl% cp -i ~/Library/Calendars/Calendar\ Cache /tmp
blackl% sqlite3 /tmp/Calendar\ Cache
SQLite version 3.7.12 2012-04-03 19:43:07
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> pragma integrity_check ;
*** in database main ***
Main freelist: Bad ptr map entry key=863 expected=(2,0) got=(5,21)
On page 21 at right child: 2nd reference to page 863
এটি এর মতো কয়েক ডজন লাইন অনুসরণ করে:
rowid <number> missing from index <name>
এবং তারপর:
wrong # of entries in index <name>
এখনই কী করা উচিত তা নিয়ে আমি কিছুটা ক্ষতির মধ্যে পড়েছি I আমি যে ত্রুটিগুলি পেয়েছি সেগুলি কীভাবে ঠিক করতে হবে সে সম্পর্কে আমি কিছুই পাইনি। এছাড়াও, ক্যালেন্ডার এজেন্টটি অক্ষম করা সম্ভবত একটি ভাল ধারণা হবে যাতে এটি নির্ধারিত হওয়ার সময় এটি ডাটাবেসটি ব্যবহার করার চেষ্টা না করে (এজন্য এটি /tmp
চালানোর আগে আমি এটি অনুলিপি করেছিলাম sqlite3
))
আমি কীভাবে ক্যালেন্ডার এজেন্টকে অক্ষম করব এবং এর ক্যাশে ঠিক করব?