[sisyphus] KMail и адресная книга
Epiphanov Sergei
=?iso-8859-1?q?serpiph_=CE=C1_nikiet=2Eru?=
Пн Июн 23 15:37:25 MSD 2008
Сегодня поймал такую проблему: после обновления системы месяц назад у меня
начал тормозить VMware при запуске системы. Долго не мог понять, а сегодня,
похоже, наткнулся на корень, когда KMail начал падать по причине нехватки
памяти. И это при том, что доступны 2Гб оперативки и 4Гб свопа. После 5
часов поиска нашёл причину падения: слишком большой файл
~/.kde/share/apps/kabc/std.vcf, целых 233Мб. Это адресная книга
KAddressBook. Поиск причины показал, что в 2006 году в одной из VCARD
программой kaddressbook была создана строка вида:
X-ADDRESSBOOK-<русский текст в UTF8>:текст
И вот эта-то строка после обновления (а точнее тот самый <русский текст в
UTF8>) начала становиться всё больше и больше! Пока, в конце-концов, не
привела к тому, что KMail при попытке прочесть список номеров падал от того,
что не мог выделить память для всех записей VCARD. Конечный результат таков:
X-ADDRESSBOOK-0xC3 0x83 0xC2 0x82 0xC3 0x82 0xC2 0x82 0xC3 0x83 0xC2 0x83
0xC3 0x82 0xC2 0x82...:текст
Надо только заменить представленные hex-коды на байты и убрать пробелы.
Кстати, изначально строка представляла собой запись (в форме UTF8):
X-ADDRESSBOOK-имя-в-девичестве:Имя
Пишу на всякий случай, чтобы и другие знали о таком подводном камне.
--
С уважением, Епифанов Сергей
Подробная информация о списке рассылки Sisyphus