More 3.4 calendar woes
Homer Dokes
hdokes at mail.inct.net
Thu Aug 20 02:48:32 CEST 2015
Hello all,
1st let me say thank you to dsp3 for his response to my conundrum. I
appreciate your response tho I must say that it was unclear what to
'remove'.
2nd let me broadcast to the world that I have found a site that I did
not know existed nor could I find any reference to it in the past so I
want to include it here for other 'would be' administrators of the Kolab
environment. The web site, http://users.kolab.narkive.com/, looks to
actually consolidate all the emails associated with
users at lists.kolab.org in a 'subject' organized manner providing a single
source of kolab specific issues/solutions with an ability to search
through them for specific information. I wished I had found this 6
months ago.
3rd, I am happy to say I have discovered success for this issue.
Long story short, my discoveries have revealed that roundcubemail
derives it's information for display in the web client not from the
mysql tables but rather from the cyrus.cache and cyrus.index files that
exist under each user imap folder.
i.e. to display user contacts in the web client under the contacts menu
selection, the data within is drawn from two files located in
/var/spool/imap/domain/<1st initial of domain name>/<domain name>/<1st
initial of mail user>/user/<username>/Contacts which are cyrus.cache and
cyrus.index.
I have not been able to determine what purpose the mysql table
'kolab_cache_contact' has but I'm confident it doesn't play a part in
the normal operation emails. If I'm wrong here someone please
correct. I have determined however that the records in 'kolab_folders'
does play a role to the extent that it keeps track of what folders have
been created and how many objects reside within. I am having a separate
issue where this objectcount is resetting to 0 but that's for another topic.
So the primary symptom here is that contacts and events disappeared for
one user. All the contact files and events existed in the associated
imap user's folder... it wasn't as tho they were physically missing.
Once I realized that roundcubemail derived it's information from the two
files, cyrus.cache and cyrus.index, I had to assume they were corrupted
in this case. These are binary files so there isn't any real way, that I
have been able to determine, that they were or were not corrupted. Once
I accepted that they must be I set out to try to determine if and how
they could be reconstructed. I began concentrating on cyrus and not the
'kolab' umbrella.
Turns out there is a command that when executed from the command line in
this format:
'reconstruct -rf user.testuser'
If you have the 'unixhierarchysep' parameter in the /etc/imapd.conf
folder set to yes than you will need to use this format of the command:
'reconstruct -rf user/testuser'.
It should also be noted that the format of 'testuser' is the actual user
name with the domain reference, i.e. testuser at domain.com.
The initiation of this command line will reconstruct the cyrus.cache and
cyrus.index files.
Now here is the kicker... it is important that you remove these two
files BEFORE executing that command line as it will not reconstruct them
if they already exists. It only does so if the two files are missing.
It should also be noted that all this assumes that the original (or
recovered) individual files exist in the respective directories. So
this means you can 'choose' which folders, i.e. contacts, calendar,
tasks, etc, have their cyrus.cache and cyrus.index rebuilt by only
removing the cyrus.cache and cyrus.index you want rebuilt. The others
will be left alone. This is important if you want to only effect a sub
folder but leave the parent folders as they are. The -r parameter in
the command is recursive.
Running that command line recreates the cyrus.cache and cyrus.index
files with information taken from the actual content files within the
respective directory. Once I had done this the contacts and calendar
events reappeared in the users roundcubemail client. Can you say....
HaLLelUiAh!!!!
Now... the one unfavorable, I still don't know what caused the original
corruption of these two files for this one user. All other users have
been operating without issue. This is disconcerting as I cannot insure
it won't happen again. It isn't as tho the user had direct access to
these files. The server is well protected against power issues and the
like.
I hope this information is of use for anyone who may find that their
roundcubemail content has suddenly vanished.
Thank you for indulging me.
hdokes
On 8/18/2015 1:45 PM, dsp3 wrote:
> Hello hdokes,
>
> Having been through a similar scenario, I believe the issue related to
> having a corrupt calendar event/events in a users calendar directory.
> Removing this/these resulted in all calendar items showing again as
> expected.
>
> Sorry I can't be more specific, but I'm 99% certain this is how I
> resolved the issue.
>
> On Tue, 2015-08-18 at 12:11 -0400, Homer Dokes wrote:
>> Hi Timotheus,
>>
>> Thank you so much for your prompt reply.
>>
>> I have enabled debugging from the initial installations (has been
>> running for about 6 months now). I actually monitor the log files in
>> real time 24/7 for two configured kolab servers via ssh and tail
>> configured in multiple windows through tmux. This allows us to
>> 'catch'
>> some of the issues as they occur and address them right away.
>> Unfortunately, I have been unable to determine why this particular
>> users
>> contacts and calendar events stopped showing in the roundcubemail web
>> client. As indicated before, any new entries do show... just not all
>> the entries prior to it's hiccup.
>>
>> I appreciate the sources of information you have provided. We will
>> spend some time and sift through them to know what is where and how
>> to
>> best utilize it.
>>
>> What I really need right now is to know where the mysql tables
>> 'kolab_cache_contact' and 'kolab_cache_calendar' get their records
>> from. I had rebuilt them with the command below but that only
>> brought
>> back the newer entries after the hiccup. The older entries do not
>> show
>> up in these tables even tho the actual 'files' exist in the users
>> respective Calendar and Contacts directories.
>>
>> Command used to rebuild tables
>> /usr/share/roundcubemail/plugins/libkolab/bin/modcache.sh clear
>> -u
>> <user at domain.org> -h localhost
>>
>> Within these directories are binary files that are named cyrus_cache,
>> cyrus.header, and cyrus.index. For this particular users contact
>> directory, the cyrus.cache file size is 1.6mb, the cyrus index is
>> 155kb,
>> and the cyrus.header are 208 bytes. I am making the assumption that
>> these files contain reference information to the user files within
>> the
>> directory but I can't be sure as the cache and index files are binary
>> and not reviewable. Judging by the size of the files I have to also
>> believe that they contain information related to all the user contact
>> files within that directory as I doubt the cache file would be 1.6mb
>> in
>> size if it only contained information on 18 contacts. Do the
>> respective
>> mysql table for contacts derive their content (records) from these
>> cache
>> files? If so, can these cache files be rebuilt from the user contact
>> files contained within the directory. If not, how does one include
>> all
>> the contact files into the mysql kolab_cache_contact' table? The
>> command line above does not include them all... only the newer files
>> that were added after the hiccup. Should that command have included
>> all
>> the files from 1. to 1458. that exist within the contacts directory
>> for
>> that user?
>>
>> For clarification.... definition of a 'hiccup': The point at which
>> the
>> user realized something was amiss... not ALWAYS consistent with when
>> the symptom actually manifested itself. :-)
>>
>> I have tried to provide as much information here as I can think is
>> pertinent. If additional information would help please let me know
>> what
>> you would need to get a better understanding of the issues.
>>
>> Again, Thanks Tim for your reply, and to anyone else that may be able
>> to
>> shed some light on this issue. In the mean time, We'll keep plugging
>> away for a viable solution.
>>
>> hdokes
>>
>>
>> _______________________________________________
>> users mailing list
>> users at lists.kolab.org
>> https://lists.kolab.org/mailman/listinfo/users
More information about the users
mailing list