<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>29926</bug_id>
          
          <creation_ts>2014-03-31 08:10:28 +0400</creation_ts>
          <short_desc>аконади не стартует</short_desc>
          <delta_ts>2022-10-14 11:20:51 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>akonadi</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc>http://bugs.kde.org/331867</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>blocker</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Gleb Kulikov">glebus</reporter>
          <assigned_to name="Sergey V Turchin">zerg</assigned_to>
          <cc>anubix</cc>
    
    <cc>zerg</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>145874</commentid>
    <comment_count>0</comment_count>
    <who name="Gleb Kulikov">glebus</who>
    <bug_when>2014-03-31 08:10:28 +0400</bug_when>
    <thetext>аконади не стартует: не может создать таблицу в базе, пресловутая ошибка 150.
От &quot;чистого&quot; пользователя ошибка сохраняется.

&quot;Sql error: Can&apos;t create table &apos;akonadi.TagRemoteIdResourceRelationTable&apos; (errno: 150) QMYSQL: Unable to execute query                      
Query: CREATE TABLE TagRemoteIdResourceRelationTable (tagId BIGINT NOT NULL, resourceId BIGINT NOT NULL, remoteId VARBINARY(255) NOT NULL, 
FOREIGN KEY (tagId) REFERENCES TagTable(id) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY (resourceId) REFERENCES ResourceTable(id) ON U
PDATE CASCADE ON DELETE CASCADE)  COLLATE=utf8_general_ci DEFAULT CHARSET=utf8&quot;                                                            
Unable to initialize database.                                                                                                             
&quot;[                                                                                                                                         
0: akonadiserver(_Z11akBacktracev+0x37) [0x462b97]                                                                                         
1: akonadiserver() [0x462df2]                                                                                                              
2: /lib64/libc.so.6(+0x35320) [0x7f5025613320]                                                                                             
3: /lib64/libc.so.6(gsignal+0x35) [0x7f50256132a5]                                                                                         
4: /lib64/libc.so.6(abort+0x148) [0x7f5025614728]                                                                                          
5: /usr/lib64/libQtCore.so.4(_Z17qt_message_output9QtMsgTypePKc+0x64) [0x7f50270ab964]                                                     
6: akonadiserver(_ZN15FileDebugStream9writeDataEPKcx+0x9d) [0x464d0d]                                                                      
7: /usr/lib64/libQtCore.so.4(_ZN9QIODevice5writeEPKcx+0xb0) [0x7f5027135060]                                                               
8: /usr/lib64/libQtCore.so.4(+0x1031c9) [0x7f50271411c9]                                                                                   
9: /usr/lib64/libQtCore.so.4(_ZN11QTextStreamD1Ev+0x58) [0x7f50271412d8]                                                                   
10: akonadiserver(_ZN7Akonadi6Server13AkonadiServer4initEv+0x5fa) [0x46794a]                                                               
11: /usr/lib64/libQtCore.so.4(_ZN7QObject5eventEP6QEvent+0x246) [0x7f50271ab216]                                                           
12: /usr/lib64/libQtCore.so.4(_ZN16QCoreApplication14notifyInternalEP7QObjectP6QEvent+0x6d) [0x7f50271958fd]                               
13: /usr/lib64/libQtCore.so.4(_ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData+0x1aa) [0x7f5027197cea]              
14: /usr/lib64/libQtCore.so.4(+0x17eff3) [0x7f50271bcff3]                                                                                  
15: /lib64/libglib-2.0.so.0(g_main_context_dispatch+0x135) [0x7f5024cc4ef5]                                                                
16: /lib64/libglib-2.0.so.0(+0x4d238) [0x7f5024cc5238]                                                                                     
17: /lib64/libglib-2.0.so.0(g_main_context_iteration+0x34) [0x7f5024cc52f4]                                                                
18: /usr/lib64/libQtCore.so.4(_ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0x65) [0x7f50271bc905]   
19: /usr/lib64/libQtCore.so.4(_ZN10QEventLoop13processEventsE6QFlagsINS_17ProcessEventsFlagEE+0x2f) [0x7f50271946bf]                       
20: /usr/lib64/libQtCore.so.4(_ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0x14e) [0x7f502719498e]                                
21: /usr/lib64/libQtCore.so.4(_ZN16QCoreApplication4execEv+0x8f) [0x7f5027198e8f]                                                          
22: akonadiserver(main+0x1bf) [0x45c69f]                                                                                                   
23: /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f50255ffa15]                                                                              
24: akonadiserver() [0x45cde8]                                                                                                             
]                                                                                                                                          
&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145882</commentid>
    <comment_count>1</comment_count>
    <who name="Zerg">anubix</who>
    <bug_when>2014-03-31 13:29:02 +0400</bug_when>
    <thetext>Покажите для начала
rpm -qf /usr/sbin/mysqld</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145902</commentid>
    <comment_count>2</comment_count>
    <who name="Gleb Kulikov">glebus</who>
    <bug_when>2014-04-01 10:12:36 +0400</bug_when>
    <thetext>(В ответ на комментарий №1)
&gt; Покажите для начала
&gt; rpm -qf /usr/sbin/mysqld

mariadb-server-5.5.34-alt1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145908</commentid>
    <comment_count>3</comment_count>
    <who name="Zerg">anubix</who>
    <bug_when>2014-04-01 13:29:45 +0400</bug_when>
    <thetext>Эта проблема у каждого индивидуально проявляется. Я постараюсь что-нибудь придумать для предотвращения.

В вашем конкретном случае сначала нужно удалить таблицу TagRemoteIdResourceRelationTable и попробовать снова запустить akonadi.

Получить опцию для соединения с пользовательским mysqld можно командой
ps x --cols 1000 -u $LOGNAME| grep -e &apos;mysqld.*akonadi&apos;| head -n1| grep -e &apos;--socket&apos;| sed &apos;s|.*\(--socket.*mysql.socket\).*|\1|&apos;

Потом
mysql расположениесокета akonadi
и в нем
DROP TABLE TagRemoteIdResourceRelationTable;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146300</commentid>
    <comment_count>4</comment_count>
    <who name="Gleb Kulikov">glebus</who>
    <bug_when>2014-04-23 13:54:51 +0400</bug_when>
    <thetext>нет, это не работает:

MariaDB [akonadi]&gt; DROP TABLE akonadi.TagRemoteIdResourceRelationTable;
ERROR 1051 (42S02): Unknown table &apos;TagRemoteIdResourceRelationTable

и естественно, сохраняется

&quot;Sql error: Can&apos;t create table &apos;akonadi.TagRemoteIdResourceRelationTable&apos;
(errno: 150) QMYSQL: Unable to execute query                      
Query: CREATE TABLE TagRemoteIdResourceRelationTable (tagId BIGINT NOT NULL,
resourceId BIGINT NOT NULL, remoteId VARBINARY(255) NOT NULL, 
FOREIGN KEY (tagId) REFERENCES TagTable(id) ON UPDATE CASCADE ON DELETE
CASCADE, FOREIGN KEY (resourceId) REFERENCES ResourceTable(id) ON U
PDATE CASCADE ON DELETE CASCADE)  COLLATE=utf8_general_ci DEFAULT CHARSET=utf8&quot; 
Unable to initialize database. 

PS: KDE обновлён до 4.13</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146308</commentid>
    <comment_count>5</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2014-04-23 16:06:40 +0400</bug_when>
    <thetext>Тогда нужно подробнее индивидульно разбираться или удалить базу для создания новой.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146325</commentid>
    <comment_count>6</comment_count>
    <who name="Gleb Kulikov">glebus</who>
    <bug_when>2014-04-24 08:07:27 +0400</bug_when>
    <thetext>(В ответ на комментарий №5)
&gt; Тогда нужно подробнее индивидульно разбираться или удалить базу для создания
&gt; новой.

Разобрался!
%$#!

ранее старые базы аконади/майсиквела были созданы с параметрами default-character-set=latin1 default-collation=latin1_swedish_ci (??? это у всех так?!), в результате майсиквел отказывается создавать таблицу с отношением foreign key и default-character-set=utf8 default-collation=utf8_general_ci).

при отключении проверки ключей, таблицы создаются, но база не работает.


Пришлось пересоздать(!) таблицы и подменить(!) в них данные на старые. После применения такого трюка, всё работает.

Кошмар!

Проверил, в нашем KDE 4.13 такой бомбы, вроде как, нет: у нового пользователя таблицы создаются с корректными опциями. Но что делать, когда юзеров много?!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146329</commentid>
    <comment_count>7</comment_count>
    <who name="Zerg">anubix</who>
    <bug_when>2014-04-24 11:36:03 +0400</bug_when>
    <thetext>(В ответ на комментарий №6)
&gt; что делать, когда юзеров много?!
Остановить Akonadi у всех перед обновлением или разлогинить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149696</commentid>
    <comment_count>8</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2015-01-15 15:05:47 +0300</bug_when>
    <thetext>Нормального решения не нашел, поэтому в p7 обновлять не буду вместе с KDE, а при обновлении p7-&gt;p8 нужно будет указать в инструкции на необходимость останова akonadi.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215915</commentid>
    <comment_count>9</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2022-10-14 11:20:51 +0300</bug_when>
    <thetext>Можно сказать, что уже просрочилось.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>