[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bacula-devel] small mysql patch


Hi

Some time ago I received a problem - dbcheck does not work with options:

8) Check for orphaned File records
9) Check for orphaned Path records

dbcheck worked 3 days and nothing is done. I stopped dbcheck (ctrl+c)
and restart MySQL.

I explain what I need dbcheck:

If you do not have enough space on the disk, the bacula (all versions)
*very* bad handles this  situation.
And this is another big problem. With the shortage of disk space
bacula could damageв Volumes.
I saw it many times.

So I had to check the database Catalog for orphaned File records and
orphaned Path records.

The time by pass and in maillist bacula-users described the same situation:

[Bacula-users]
From: Ryan Novosielski <novosirj@xxxxxxxxx>
Date: 18/08/08 17:18
Subj: Bacula 2.2.8, dbcheck never completes

And I and Ryan Novosielski use DBMS MySQL. I empirically determined
that the need to create an index
CREATE INDEX idxFJ  ON File (FileId, JobId);

After that dbcheck works VERY quickly.
I described the decision [Bacula-users] and [Bacula-devels].

My proposals were as follows:
*** include an appropriate comment in the file
src/cats/make_mysql_tables.in after rows
CREATE TABLE File...
(They already have a similar comment.)

I received a reply - no.

*** Describe the problem and solution in the documentation, for
example, in section Troubleshooting.

At this suggestion, I also did not receive the normal response.

*** I studied the source code dbcheck.c and concluded that there can
not insert the code, which will depend on the particular DBMS (in this
case - MySQL).

Understand ?

Conclusion: there is a problem, but to eliminate it, no one will be?
Let the problem exists and further? Or how?

Thanks.


2008/9/3 Kern Sibbald <kern@xxxxxxxxxxx>:
> On Wednesday 03 September 2008 08:22:31 Yuri Timofeev wrote:
>> Hi
>>
>> 2008/8/31 Eric Bollengier <eric@xxxxxxxxxxxxxxxx>:
>> > If you want to use new indexes with dbcheck, you can modify dbcheck.c in
>> > this way :
>> >  - ask to the user if he wants to add them (think about disk space)
>> >  - add them + run analyse
>> >  - run the cleanup operation
>> >  - remove them
>> >
>> > FYI, postgresql can use composite indexes, so it will require less
>> > indexes than mysql.
>>
>> It seems the problem appears only when working with MYSQL.
>>
>> I made a small program in order to make temporary index
>> CREATE INDEX idxFJ  ON File (FileId, JobId);
>> and then removes him.
>>
>> Now I little understand a  Bacula API. And there is one problem:
>> my source code depends on the DBMS (MySQL).
>> And I still do not know how it can be inserted in dbcheck.c
>>
>>
>> If I write (in dbcheck.c) as follows:
>>
>> # ifdef HAVE_MYSQL
>> / * My code uses bacula api * /
>> # endif
>>
>> So it would be wrong, imho, or is this possible?
>> Can you suggest any solution?
>
> Please be specific about the exact MySQL dependencies.
>
>
>



-- 
with best regards
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Bacula-devel mailing list
Bacula-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/bacula-devel


This mailing list archive is a service of Copilotco.