Skip Menu |

This queue is for tickets about the Thread-Pool CPAN distribution.

Report information
The Basics
Id: 11059
Status: resolved
Priority: 0/
Queue: Thread-Pool

People
Owner: Nobody in particular
Requestors: grussbac [...] pt.lu
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 0.32
Fixed in: (no value)



Subject: Using large hashes as arguments for threads creates Corrupted storable string (binary v2.6) at ../../lib/Storable.pm
Thread::Pool 0.32 ActivePerl 5.8.2 Solaris 9 Error is: Corrupted storable string (binary v2.6) at ../../lib/Storable.pm (autosplit into ../../lib/auto/Storable/thaw.al) line 358 this occurs when passing many parameters and hashes to a job. Code is like this (simplified): my $threadPool = threadPool($numThreads); foreach my $printerid (sort keys %userByPrinter) { my $jobid=$threadPool->job ( $user,\%dateByName1,\%archiveDateByName,\%nameByUser,\%userByPrinter,$printerid, $targetDir,$archiveTargetDir,$flag,\%dateByName2,\%dateByName3,\% dateByName4,$environment); } $threadPool->shutdown(); This works fine for up to about 15 threads and hashes with around 400 entries. Above 15 threads the above mentioned error appears. Limiting the number of threads to 15 seems to prevent the problem, but is obviously not the solution. The error occurs only on some threads, i.e. from 18 threads, 14 run and 3 fail with the mentioned error. Thanks a lot for your help Heiko grussbac@pt.lu
Date: Mon, 24 Jan 2005 15:41:01 +0100
To: bug-Thread-Pool [...] rt.cpan.org, undisclosed-recipients: ;
From: Elizabeth Mattijsen <liz [...] dijkmat.nl>
Subject: Re: [cpan #11059] Using large hashes as arguments for threads creates Corrupted storable string (binary v2.6) at ../../lib/Storable.pm
RT-Send-Cc:
If your version of Storable is < 2.13, could you try upgrading that and see if that fixes the problem? At 3:22 PM -0500 1/18/05, Guest via RT wrote: Show quoted text
>This message about Thread-Pool was sent to you by guest <> via rt.cpan.org > >Full context and any attached attachments can be found at: ><URL: https://rt.cpan.org/Ticket/Display.html?id=11059 > > >Thread::Pool 0.32 >ActivePerl 5.8.2 >Solaris 9 > >Error is: > >Corrupted storable string (binary v2.6) at ../../lib/Storable.pm >(autosplit into ../../lib/auto/Storable/thaw.al) line 358 > >this occurs when passing many parameters and hashes to a job. Code >is like this (simplified): > >my $threadPool = threadPool($numThreads); >foreach my $printerid (sort keys %userByPrinter) { >my $jobid=$threadPool->job ( >$user,\%dateByName1,\%archiveDateByName,\%nameByUser,\%userByPrinter,$printerid, >$targetDir,$archiveTargetDir,$flag,\%dateByName2,\%dateByName3,\% >dateByName4,$environment); >} >$threadPool->shutdown(); > >This works fine for up to about 15 threads and hashes with around >400 entries. Above 15 threads the above mentioned error appears. >Limiting the number of threads to 15 seems to prevent the problem, >but is obviously not the solution. > >The error occurs only on some threads, i.e. from 18 threads, 14 run >and 3 fail with the mentioned error. > >Thanks a lot for your help > >Heiko > >grussbac@pt.lu