|
From: Bán M. <ba...@vo...> - 2010-09-06 14:17:21
|
Hi,
I've found something:
in the masterconn.c
void masterconn_metachanges_log ...
the fprintf just write the changelogs when I stop or restart the process
178 if (eptr->logfd==NULL) {
179 eptr->logfd = fopen("changelog_ml.0.mfs","a");
180 }
181
182 data++;
183 version = get64bit(&data);
184 if (eptr->logfd) {
185 fprintf(eptr->logfd,"%"PRIu64": %s\n",version,data);
186 } else {
187 syslog(LOG_NOTICE,"lost MFS change %"PRIu64":
%s",version,data); 188 }
I've append this lines:
if (eptr->logfd) {
fclose(eptr->logfd);
eptr->logfd = NULL;
}
It seems to work, but I'm not sure is it a good way or not, I did not
read the source code thoroughly.
Second problem:
If I stop, wait and start the metalogger server, the changelog will be
inconsistent. The changes from the master server, while the metalogger
was being stopped, not arriving after I turn it back on.
Is there any recommendation how can I manage the metalogger servers
to keep coherent change logs after failure situation?
Miklos
On Mon, 6 Sep 2010 13:42:30 +0200
Michał Borychowski <mic...@ge...> wrote:
> Hi!
>
> Metaloggers should continuously receive the current changes from the
> master server and write them into its own text change logs named
> changelog_ml.0.mfs.
>
> How do you know that in your system they are save hourly? Don't they
> increment with every change in the filesystem?
>
> Regarding your second question - yes, this is right. For now,
> metalogger doesn't download the metadata file upon starting. We know
> about this shortcoming and we'll fix the behaviour soon.
>
>
|