Hi,
20.09.2007 11:07,, Kern Sibbald wrote::
> On Thursday 20 September 2007 00:59, Arno Lehmann wrote:
>> Hi,
>>
>> 18.09.2007 16:25,, Marc Schiffbauer wrote::
>>> * Chris Howells schrieb am 18.09.07 um 16:14 Uhr:
>>>> Hi,
>>>>
>>>> Marc Schiffbauer wrote:
>>>>
>>>> Finally got around to messing around with bacula again...
>>>>
>>>>> The manual says that nnn being the same number for both settings
>>>>> means "fixed" blocksize.
>>>>>
>>>>> As I understand it, your solutions should be to just set the
>>>>> "Minimum Block Size" so you get a good perfromance.
>>>>>
>>>>> Minimum Block Size = 1048576
>>>> Unfortunately just setting a Minimum Block Size does not work. btape for
>>>> instance will not work then. It dies with a glibc error. (See end of
>>>> mail for full trace.
>> Interesting. On a FreeBSD 7 system with Bacula 2.2.4 btape crashes
>> when I use larger block sizes. I haven't found the actual limit, but
>> 512k blocks work, 1MB sized ones don't.
>
> Bacula currently limits block sizes to 1MB. This limit was implemented 7
> years ago when the fastest drive was a DLT. I will increase the size, but I
> am quite skeptical about writing block sizes of 1 or 2 Megabytes. I believe
> that you may get a bit more speed, but you will probably increase the rate of
> errors -- unless drive technology has progressed more than I am aware of.
I'll see if I can use my customers system for some tests - obviously,
they are interested in getting a good throughput, so they might agree.
> By the way, increasing the Minimum Block Size is NOT the way to increase the
> Maximum block size. In general one should *never* set the minimum block size
> unless you have an older brain damaged drive. In increasing the Minimum
> Block Size, you virtually guarantee to waste tape for no good reason. The
> way to increase the maximum block size is to use the Maximum Block Size
> directive, which I previously thought was rather obvious ... oh well.
Sure, but regarding testing, I wanted to have a setup which results in
reproducable results, and I assumed that, using a fixed block size
might help here.
>>>> For instance with the following setting:
>>>>
>>>> Minimum Block Size = 256000
>>>>
>>>> [EMAIL PROTECTED]:/etc/bacula# btape -c bacula-sd.conf /dev/nst0
>>>> <snip>
>>>> test
>>>> <snip>
>>>> *** glibc detected *** malloc(): memory corruption: 0x080d9d90 ***
>>>>
>>>> Setting both a Minimum Block Size and Maximum Block Size to the same
>>>> value *does* seems to work with btape.
>>>>
>>>> BTW, I tried using 1048576. Unfortunately this does not work. From
>>>> src/stored/dev.c:
>>>>
>>>> if (dev->max_block_size > 1000000) {
>>>> Jmsg3(jcr, M_ERROR, 0, _("Block size %u on device %s is too
>>>> large, using default %u\n"),
>>>> dev->max_block_size, dev->print_name(), DEFAULT_BLOCK_SIZE);
>>>>
>>>> Oops.
>>>>
>>>> Why can I not use > 1000000 bytes? This seems a *really* strange
>>>> restriction. I can happily use blocks of several megabytes using tar.
>> For current tape drives, we really need to support larger block sizes.
>
> To the best of my knowledge we support sizes up to 1MB. I will increase it,
> but as I mentioned, I am somewhat skeptical.
>
>> I tested today with an AIT-5 tape drive.
>>
>> Throughput measured with dd, test file 8 GB in size, so I think we can
>> ignore the effects of buffering and caches.
>> disk -> /dev/null ~60MB/s
>> disk -> tape, <64kB blocks: ~5MB/s
>> 1 MB blocks: ~15MB/s
>> 2 MB blocks: ~20MB/s (close enough to the published
>> specification)
>
> If you want to measure throughput, please do so with Bacula. Though the
> results may be the same, it would be a bad idea to base such important
> considerations on tests that don't necessarily apply.
Right, but as of now, testing with Bacula is still under way and will
take a while. These figures were created as a reference, so we know
what we can reasonably expect on that system.
>> Unfortunately, I could not test with 512k block sizes in btape - there
>> were positioning errors during the test, while the default block sizes
>> worked flawless. I don't know if more in-depth testing is possible as
>> this is a customer's system which should go into production some day soon.
>
> Unless you have a critical problem of speed, I don't particularly recommend
> starting with block sizes other than the default. It would require a lot
> more testing, and if you look at the *old* archives you will find a number of
> comments from people who know kernels that claim that anything bigger than
> 64K blocks can create problems. Of course, those comments were made a long
> time ago.
We'll how tests run...
>> Anyway, for decent performance, on that system block sizes well beyon
>> 1MB should be used.
>
> This has not been proved to me. No one has done testing to the best of my
> knowledge with Bacula.
>
> I would be interested to hear the experience of users who are using larger
> block sizes. First about the throughput they get, but also about the number
> of tape read errors they have, and any problems associated with running
> multiple simultaneous jobs.
>
>
>> System is FreeBSD 7-current, AIT-5 tape drive in autochanger, 2GB RAM,
>> and a reasonable disk subsystem. (Again, I don't have many details
>> now, might get them later, but the key issue here is that Bacula
>> should support larger tape block sizes.)
>
> Feel free to push up the 1MB limit and test. I will increase the limit to
> 3MB
> in the next release.
Good.
> By the way, once you choose a block size, I don't believe that you can easily
> switch to a smaller size -- Bacula will not be able to read the tapes unless
> you have a special setup for those Volumes. I think you can safely increase
> the block size, but I have never tested it, so this is also an important
> point to consider.
Yes, but IMO, this is something that can be handled by advising the
users to have a good setup documentation.
Arno
> Regards,
>
> Kern
>
>>> Indeed.
>>> I discuss that on the devel list and/or maybe open a
>>> bugreport in the bacula BTS.
>>>
>>> And btape crashing is a bug as well...
>> Yes...
>>
>>> -Marc
>> Arno
--
Arno Lehmann
IT-Service Lehmann
www.its-lehmann.de
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Bacula-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bacula-devel