[KMail2 / Akonadi] Failed to request resource (résolu)

Xorg, Compiz, KDE / Gnome / Xfce / Fluxbox / e17 / fvwm ... GDM/KDM/XDM...
Répondre
kalenx
newbie
Messages : 5
Inscription : ven. 30 avr. 2010, 20:39

[KMail2 / Akonadi] Failed to request resource (résolu)

Message par kalenx »

Bonjour,

J'ai mis à jour hier vers KDE 4.6.5, avec le nouveau KDE-PIM et KMail2.
Tout a très bien fonctionné (mieux que KMail 1) jusqu'à ce que je redémarre.

À partir de là, j'obtiens systématiquement la même erreur (fatale) en lançant KMail2 :
kmail2(25500)/libakonadi Akonadi::SpecialCollectionsRequestJobPrivate::resourceScanResult: Failed to request resource "akonadi_maildir_resource_0" : "Erreur inconnue. (Échec de la récupération de la collection de la ressource.)"
kmail2(25500)/libakonadi Akonadi::SpecialCollectionsRequestJob::slotResult: Failed SpecialCollectionsRequestJob::slotResult "Erreur inconnue. (Échec de la récupération de la collection de la ressource.)"
kmail2(25500) MailCommon::Kernel::emergencyExit: "KMail a rencontré une erreur fatale et va s'arrêter maintenant.
L'erreur est :
Échec de la récupération de la collection de la ressource."
Répétée 4 ou 5 fois.


Akonadi semble bien fonctionner, voici le rapport de test :
Akonadi Server Self-Test Report
===============================

Test 1: SUCCESS
--------

Database driver found.
Details: The QtSQL driver 'QMYSQL' is required by your current Akonadi server configuration and was found on your system.

File content of '/home/myusername/.config/akonadi/akonadiserverrc':
[%General]
Driver=QMYSQL

[QMYSQL]
Name=akonadi
Host=localhost
Options="UNIX_SOCKET=/home/myusername/.local/share/akonadi/socket-lybli/mysql.socket"
ServerPath=/usr/bin/mysqld
StartServer=true
User=akonadi
Password=boum

[Debug]
Tracer=null

[QPSQL]
Name=akonadi
Host=
User=
Password=
Port=5432


Test 2: SUCCESS
--------

Akonadi is not running as root
Details: Akonadi is not running as a root/administrator user, which is the recommended setup for a secure system.

Test 3: SUCCESS
--------

MySQL server found.
Details: You have currently configured Akonadi to use the MySQL server '/usr/bin/mysqld'.
Make sure you have the MySQL server installed, set the correct path and ensure you have the necessary read and execution rights on the server executable. The server executable is typically called 'mysqld'; its location varies depending on the distribution.

Test 4: SUCCESS
--------

MySQL server is executable.
Details: MySQL server found: /usr/bin/mysqld Ver 5.5.14-log for Linux on i686 (Source distribution)


Test 5: SUCCESS
--------

MySQL server log contains no errors.
Details: The MySQL server log file &apos;<a href='/home/myusername/.local/share/akonadi/db_data/mysql.err'>/home/myusername/.local/share/akonadi/db_data/mysql.err</a>&apos; does not contain any errors or warnings.

File content of '/home/myusername.local/share/akonadi/db_data/mysql.err':
110708 11:46:34 InnoDB: The InnoDB memory heap is disabled
110708 11:46:34 InnoDB: Mutexes and rw_locks use GCC atomic builtins
110708 11:46:34 InnoDB: Compressed tables use zlib 1.2.5
110708 11:46:34 InnoDB: Initializing buffer pool, size = 80.0M
110708 11:46:34 InnoDB: Completed initialization of buffer pool
110708 11:46:34 InnoDB: highest supported file format is Barracuda.
110708 11:46:34 InnoDB: Waiting for the background threads to start
110708 11:46:35 InnoDB: 1.1.8 started; log sequence number 37286821
110708 11:46:36 [Note] /usr/bin/mysqld: ready for connections.
Version: '5.5.14' socket: '/home/myusername/.local/share/akonadi/socket-lybli/mysql.socket' port: 0 Source distribution


Test 6: SUCCESS
--------

MySQL server default configuration found.
Details: The default configuration for the MySQL server was found and is readable at <a href='/usr/share/config/akonadi/mysql-global.conf'>/usr/share/config/akonadi/mysql-global.conf</a>.

File content of '/usr/share/config/akonadi/mysql-global.conf':
#
# Global Akonadi MySQL server settings,
# These settings can be adjusted using $HOME/.config/akonadi/mysql-local.conf
#
# Based on advice by Kris Köhntopp <kris@mysql.com>
#
[mysqld]
skip_grant_tables
skip_networking

# strict query parsing/interpretation
# TODO: make Akonadi work with those settings enabled
#sql_mode=strict_trans_tables,strict_all_tables,strict_error_for_division_by_zero,no_auto_create_user,no_auto_value_on_zero,no_engine_substitution,no_zero_date,no_zero_in_date,only_full_group_by,pipes_as_concat
#sql_mode=strict_trans_tables

# use InnoDB for transactions and better crash recovery
default_storage_engine=innodb
# case-insensitive table names, avoids trouble on windows
lower_case_table_names=1
character_set_server=utf8
collation_server=utf8_general_ci
table_cache=200
thread_cache_size=3
#log_bin=mysql-bin
#expire_logs_days=3
#sync_bin_log=0
# error log file name, relative to datadir
log_error=mysql.err
log_warnings=2
# log all queries, useful for debugging but generates an enormous amount of data
#log=mysql.full
# log queries slower than n seconds, log file name relative to datadir (for debugging only)
#log_slow_queries=mysql.slow
#long_query_time=1
# log queries not using indices, debug only, disable for production use
#log_queries_not_using_indexes=1
# maximum blob size
max_allowed_packet=32M
max_connections=256
# makes sense when having the same query multiple times
# makes no sense with prepared statements and/or transactions
query_cache_type=0
query_cache_size=0

innodb_file_per_table=1
innodb_log_buffer_size=1M
innodb_additional_mem_pool_size=1M
# messure database size and adjust
# SELECT sum(data_length) as bla, sum(index_length) as blub FROM information_schema.tables WHERE table_schema not in ("mysql", "information_schema");
innodb_buffer_pool_size=80M
# size of average write burst, keep Innob_log_waits small, keep Innodb_buffer_pool_wait_free small (see show global status like "inno%", show global variables)
innodb_log_file_size=64M
innodb_flush_log_at_trx_commit=2

# Do not drop the connection to the DB after 8 hours of inactivity
wait_timeout=1296000

[client]
default-character-set=utf8


Test 7: SKIP
--------

MySQL server custom configuration not available.
Details: The custom configuration for the MySQL server was not found but is optional.

Test 8: SUCCESS
--------

MySQL server configuration is usable.
Details: The MySQL server configuration was found at <a href='/home/myusername/.local/share/akonadi/mysql.conf'>/home/myusername/.local/share/akonadi/mysql.conf</a> and is readable.

File content of '/home/myusername/.local/share/akonadi/mysql.conf':
#
# Global Akonadi MySQL server settings,
# These settings can be adjusted using $HOME/.config/akonadi/mysql-local.conf
#
# Based on advice by Kris Köhntopp <kris@mysql.com>
#
[mysqld]
skip_grant_tables
skip_networking

# strict query parsing/interpretation
# TODO: make Akonadi work with those settings enabled
#sql_mode=strict_trans_tables,strict_all_tables,strict_error_for_division_by_zero,no_auto_create_user,no_auto_value_on_zero,no_engine_substitution,no_zero_date,no_zero_in_date,only_full_group_by,pipes_as_concat
#sql_mode=strict_trans_tables

# use InnoDB for transactions and better crash recovery
default_storage_engine=innodb
# case-insensitive table names, avoids trouble on windows
lower_case_table_names=1
character_set_server=utf8
collation_server=utf8_general_ci
table_cache=200
thread_cache_size=3
#log_bin=mysql-bin
#expire_logs_days=3
#sync_bin_log=0
# error log file name, relative to datadir
log_error=mysql.err
log_warnings=2
# log all queries, useful for debugging but generates an enormous amount of data
#log=mysql.full
# log queries slower than n seconds, log file name relative to datadir (for debugging only)
#log_slow_queries=mysql.slow
#long_query_time=1
# log queries not using indices, debug only, disable for production use
#log_queries_not_using_indexes=1
# maximum blob size
max_allowed_packet=32M
max_connections=256
# makes sense when having the same query multiple times
# makes no sense with prepared statements and/or transactions
query_cache_type=0
query_cache_size=0

innodb_file_per_table=1
innodb_log_buffer_size=1M
innodb_additional_mem_pool_size=1M
# messure database size and adjust
# SELECT sum(data_length) as bla, sum(index_length) as blub FROM information_schema.tables WHERE table_schema not in ("mysql", "information_schema");
innodb_buffer_pool_size=80M
# size of average write burst, keep Innob_log_waits small, keep Innodb_buffer_pool_wait_free small (see show global status like "inno%", show global variables)
innodb_log_file_size=64M
innodb_flush_log_at_trx_commit=2

# Do not drop the connection to the DB after 8 hours of inactivity
wait_timeout=1296000

[client]
default-character-set=utf8


Test 9: SUCCESS
--------

akonadictl found and usable
Details: The program '/usr/bin/akonadictl' to control the Akonadi server was found and could be executed successfully.
Result:
Akonadi 1.5.3


Test 10: SUCCESS
--------

Akonadi control process registered at D-Bus.
Details: The Akonadi control process is registered at D-Bus which typically indicates it is operational.

Test 11: SUCCESS
--------

Akonadi server process registered at D-Bus.
Details: The Akonadi server process is registered at D-Bus which typically indicates it is operational.

Test 12: SUCCESS
--------

Nepomuk search service registered at D-Bus.
Details: The Nepomuk search service is registered at D-Bus which typically indicates it is operational.

Test 13: SUCCESS
--------

Nepomuk search service uses an appropriate backend.
Details: The Nepomuk search service uses one of the recommended backends.

Test 14: SKIP
--------

Protocol version check not possible.
Details: Without a connection to the server it is not possible to check if the protocol version meets the requirements.

Test 15: SUCCESS
--------

Resource agents found.
Details: At least one resource agent has been found.

Directory listing of '/usr/share/akonadi/agents':
akonotesresource.desktop
birthdaysresource.desktop
calendarsearchagent.desktop
contactsresource.desktop
davgroupwareresource.desktop
gcalresource.desktop
googledataresource.desktop
icalresource.desktop
imapresource.desktop
invitationsagent.desktop
kabcresource.desktop
kcalresource.desktop
kdeaccountsresource.desktop
knutresource.desktop
kolabproxyresource.desktop
localbookmarksresource.desktop
maildirresource.desktop
maildispatcheragent.desktop
mboxresource.desktop
microblog.desktop
mixedmaildirresource.desktop
mtdummyresource.desktop
nepomukcalendarfeeder.desktop
nepomukcontactfeeder.desktop
nepomukemailfeeder.desktop
nepomuktagresource.desktop
nntpresource.desktop
notesresource.desktop
openxchangeresource.desktop
pop3resource.desktop
vcarddirresource.desktop
vcardresource.desktop

Environment variable XDG_DATA_DIRS is set to '/usr/share/:/usr/local/share/:/opt/kde/share'

Test 16: SUCCESS
--------

No current Akonadi server error log found.
Details: The Akonadi server did not report any errors during its current startup.

Test 17: SUCCESS
--------

No previous Akonadi server error log found.
Details: The Akonadi server did not report any errors during its previous startup.

Test 18: SUCCESS
--------

No current Akonadi control error log found.
Details: The Akonadi control process did not report any errors during its current startup.

Test 19: SUCCESS
--------

No previous Akonadi control error log found.
Details: The Akonadi control process did not report any errors during its previous startup.
Par ailleurs, dans le panneau de contrôle d'Akonadi (kcmshell4 kcm_akonadi), je peux voir que mes mails sont bel et bien récupérés régulièrement du serveur IMAP.

Nepomuk et Strigi sont lancés, sans erreur.

Par contre, lorsque je lance Kontact, je vois ceci dans la console d'Akonadi :
Known subscriber "kontact" subscribes again
akonadi_imap_resource_0(25390)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
Database "akonadi" opened using driver "QMYSQL"
Database "akonadi" opened using driver "QMYSQL"
akonadi_imap_resource_1(25391)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
void Akonadi::NotificationSource::serviceUnregistered(const QString&) Notification source "kontact" now serving: ()
void Akonadi::NotificationSource::unsubscribe() "kontact"
akonadi_imap_resource_1(25391)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
akonadi_maildispatcher_agent(25395)/libakonadi Akonadi::SpecialCollectionsRequestJob::slotResult: Failed SpecialCollectionsRequestJob::slotResult "Erreur inconnue. (Échec de la récupération de la collection de la ressource.)"
akonadi_maildispatcher_agent(25395) OutboxQueue::Private::localFoldersRequestResult: Failed to get outbox folder. Giving up.
akonadi_maildispatcher_agent(25395)/libakonadi Akonadi::SpecialCollectionsRequestJobPrivate::resourceScanResult: Failed to request resource "akonadi_maildir_resource_0" : "Erreur inconnue. (Échec de la récupération de la collection de la ressource.)"
Bref, je n'ai pas vraiment d'idée du problème...

J'ai essayé :
- La méthode proposée ici (en bas de la page). Pas d'erreur lors de l'exécution des commandes, mais KMail ne fonctionne toujours pas.

- Créer une table spécifique (premier post de la page). Encore une fois, pas d'amélioration.

- Supprimer les dossiers $HOME/.local/akonadi, $HOME/.kde4/share/apps/nepomuk, $HOME/.kde4/share/apps/akonadi, etc. Pas de changements si ce n'est que Virtuoso a rempli toute la RAM pendant 4 heures pour refaire sa base de données.


Bref, si quelqu'un a une idée, ce serait fort apprécié, Kontact et ses modules sont (pour moi) des outils dont je me sers énormément (calendriers, mail, contacts, rss, etc.). Si vous voulez d'autres détails, n'hésitez pas.

Bonne journée.
Dernière modification par kalenx le dim. 10 juil. 2011, 08:48, modifié 3 fois.
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [KMail2 / Akonadi] Failed to request resource

Message par FoolEcho »

Salut,

As-tu essayé de supprimer "akonadi_maildir_resource_0" via akonadi puis de le recréer ?

Perso, cette transition me casse les pieds depuis hier... Alors, si c'est pour récupèrer/intégrer un dossier local, tu peux voir de ce côté, peut-être: http://forums.archlinux.fr/post73620.html#p73620.
«The following statement is not true. The previous statement is true.» :nage:
kalenx
newbie
Messages : 5
Inscription : ven. 30 avr. 2010, 20:39

Re: [KMail2 / Akonadi] Failed to request resource (résolu?)

Message par kalenx »

Salut,

Hum merci, ça semble avoir marché (en fait j'ai dû aussi supprimer le fichier correspondant dans $HOME/.config/akonadi/, il semble que de ne faire que l'un des deux ne fonctionne pas).
Il semblerait que j'avais à la fois une ressource "Dossiers locaux" et une autre "Local folders" et que ça produisait un clash plus ou moins agréable.

J'ai perdu mes dossiers locaux, mais c'est un moindre mal (je travaille uniquement en IMAP avec copie locale donc j'ai été bon pour tout redownloader mais c'est tout).

Maintenant, Kontact me fait un "Unknown error" à chaque démarrage, mais il démarre et je peux récupérer mes mails! :D

Je mets "probablement résolu" en attendant de m'assurer que ça fonctionne bien même si je redémarre ma session.

Merci beaucoup pour le conseil.
kalenx
newbie
Messages : 5
Inscription : ven. 30 avr. 2010, 20:39

Re: [KMail2 / Akonadi] Failed to request resource

Message par kalenx »

Bonjour,

Hum, en fait, il semble qu'il y ait encore quelques problèmes et que j'ai fait un peu de zèle lors de ma suppression. Maintenant lorsque je veux envoyer un message KMail me dit :
Il y a eu des problèmes en essayant de mettre en file le message pour envoi : Le dossier de messages envoyés n'est pas valable.
Ce qui est plutôt génant puisque je ne peux alors plus rien envoyer.

Quelqu'un saurait-il quel est le nom du dossier / de la ressource que je dois créer pour qu'il s'y retrouve?

Merci beaucoup et bonne journée
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [KMail2 / Akonadi] Failed to request resource (en cours)

Message par FoolEcho »

kalenx a écrit :Il semblerait que j'avais à la fois une ressource "Dossiers locaux" et une autre "Local folders" et que ça produisait un clash plus ou moins agréable.
Comme j'ai dit sur l'autre sujet, je fais un export des mails de kmail directement dans "Dossiers locaux", de façon à ne plus traîner ces doublons justement (en plus, tout passe en françias comme ça :) ). Tu peux supprimer les doublons via akonadi, il va te recréer un "Dossier local" (par contre ferme kmail, parce que lui ne va plus savoir où il en est).

Pour la gestion d'akonadi, tu devrais passer par ses outils de configuration (le mode graphique est bien foutu -- par contre je ne connais pas trop en ligne de commandes en dehors du stop/start). En effet, Akonadi gère des bases de données, donc supprimer manuellement telle ou telle ressource va forcément conduire à une table bancale et ça va forcément raler à un moment ou à un autre.
Veille bien à stopper le serveur si tu modifies les fichiers de configuration.
«The following statement is not true. The previous statement is true.» :nage:
Cactus
Maître du Kyudo
Messages : 2073
Inscription : sam. 16 sept. 2006, 10:39
Localisation : 31 - Toulouse Nord

Re: [KMail2 / Akonadi] Failed to request resource (en cours)

Message par Cactus »

En parlant d'akonadi, j'ai vu qu'il y avait une bdd de 2 Go relative à mes mails (oui, j'en ai bcp), mais je ne sais pas si elle existait avant.
Et là, j'ai un peu peur : ça peut flinguer un SSD une telle bdd ?
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [KMail2 / Akonadi] Failed to request resource (en cours)

Message par FoolEcho »

Oui c'est bien là que ça atterit. :D
Pour ton disque ssd, ça ne fera pas plus mal qu'autre chose je dirai.
«The following statement is not true. The previous statement is true.» :nage:
kalenx
newbie
Messages : 5
Inscription : ven. 30 avr. 2010, 20:39

Re: [KMail2 / Akonadi] Failed to request resource (en cours)

Message par kalenx »

Bonjour,

Merci beaucoup pour l'aide, finalement je me suis simplement créé une nouvelle identité et il semble que KMail et Akonadi aient enfin réussi à s'entendre :D

Je suis d'accord sur l'utilité du mode graphique, le seul problème étant que parfois on se retrouve avec un choix incalculables de trucs possibles (ici, par exemple, pour créer de nouveaux dossiers locaux) sans trop savoir ce qu'il faut faire.
Mais bon, une fois que c'est bien configuré, ça semble mieux marcher qu'avant, donc je croise les doigts...

@Cactus

Puisque KMail ne lit pas l'intégralité de la base à chaque utilisation, je ne verrait pas de problème particulier. Par ailleurs, les SSDs sont particulièrement utilisés pour stocker des bases de données (accès aléatoires très rapides par rapport aux HDD ordinaires) donc je ne crois pas que ce soit un réel problème.
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [KMail2 / Akonadi] Failed to request resource (résolu)

Message par FoolEcho »

Cactus a écrit :En parlant d'akonadi, j'ai vu qu'il y avait une bdd de 2 Go relative à mes mails (oui, j'en ai bcp)
Puisqu'on en parle, après mes déboires (3-4 tests en imap :roll: ), la base a gonflé de façon magistrale: 5Go... :mrgreen: ... et ce en dépit de la suppression des agents de ressources au fur et à mesure via akonadi. :?
Je n'ai pas été voir s'il y a avait un outil pour rectifier proprement (d'autant que maintenant, tout est propre, donc je n'ai plus trop envie de trifouiller :non: ), donc j'ai supprimé toute la base akonadi/les ressources et reconfiguré le tout + kmail... 1,8 Go, c'est déjà plus normal (oui, j'en ai bcp aussi :mrgreen: ... plus qu'à compresser et garder une sauvegarde de la configuration de kmail1 par sécurité, avant de le supprimer, et mon compte aura presque retrouvé sa ligne :) ). Mais j'ai vu qu'avec akonadiconsole, on peut notamment explorer toutes les ressources de la base.

Bon, tout ça n'est pas sans défaut et sans mal, mais conceptuellement, j'aime bien cette gestion de ressources... ... ah, modèle/vue/contrôleur... :D
«The following statement is not true. The previous statement is true.» :nage:
Cactus
Maître du Kyudo
Messages : 2073
Inscription : sam. 16 sept. 2006, 10:39
Localisation : 31 - Toulouse Nord

Re: [KMail2 / Akonadi] Failed to request resource (résolu)

Message par Cactus »

@ kalenx : Je suis d'accord pour la lecture, mais ce qui me gêne, c'est l'écriture (si c'est trop fréquent, le SSD ne va pas aimer).
Répondre