Bug#912695: apt-show-versions: breaks "apt-get update" and uninstallable after Perl 5.28 upgrade

Christoph Martin martin at uni-mainz.de
Mon Nov 12 08:29:14 GMT 2018


Hi Niko,

Version 0.22.9 introduced a setting of recursion_limit_hast to 65536,
but I still get reports of user, who need a higher value.

If this needs a longer standing solution, I could introduce a config
file for this setting.

The default values for Storage.pm are different on all platforms and
apparently depends on the build environment:

> /tmp/usr/lib/aarch64-linux-gnu/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 7236
> /tmp/usr/lib/arm-linux-gnueabi/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 13458
> /tmp/usr/lib/arm-linux-gnueabihf/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 12991
> /tmp/usr/lib/i386-gnu/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 10466
> /tmp/usr/lib/i386-kfreebsd-gnu/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 10464
> /tmp/usr/lib/i386-linux-gnu/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 10462
> /tmp/usr/lib/mips-linux-gnu/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 8756
> /tmp/usr/lib/mips64el-linux-gnuabi64/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 6718
> /tmp/usr/lib/mipsel-linux-gnu/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 8750
> /tmp/usr/lib/powerpc64le-linux-gnu/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 5061
> /tmp/usr/lib/s390x-linux-gnu/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 4039
> /tmp/usr/lib/x86_64-kfreebsd-gnu/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 8557
> /tmp/usr/lib/x86_64-linux-gnu/perl/5.28.0/Storable/Limit.pm:$Storable::recursion_limit_hash = 8552

So this might also be an issue with reproducible builds.

Christoph

Am 04.11.18 um 20:43 schrieb Niko Tyni:
> On Sun, Nov 04, 2018 at 06:09:36PM +0100, Salvatore Bonaccorso wrote:
>  
>> This is likely due to the perl upstream change around/with
>> https://perl5.git.perl.org/perl.git/commitdiff/c0e3b4b51cabf15ed8fc5f564dfeea31c25f5239
>> .
>>
>> It can be workarounded by either setting higher limits for
>> recursion_limit/recursion_limit_hash or disable it with -1
>>
>> $Storable::recursion_limit=-1;
>> $Storable::recursion_limit_hash=-1;
>>
>> but I'm not sure this will be the right solution.
> 
> Thanks. I've filed #912900 about this on the Perl side. Christoph:
> please use these workarounds at least for now. Apologies for the trouble.
> 
> Also, please let us know at perl at packages.debian.org when a workaround
> is in Debian. We can then add dependency metadata on the perl side to
> make sure apt-show-versions gets always upgraded before perl.
> 
> Longer term, I'm not sure Storable is the best tool for this (a cache
> of apt list contents.) AFAICS you're reading the whole data structure
> in memory even when you need just one entry? You might want to look at
> the various Cache / CHI modules, or even just plain GDBM_File.
> 

-- 
============================================================================
Christoph Martin, Leiter Unix-Systeme
Zentrum für Datenverarbeitung, Uni-Mainz, Germany
 Anselm Franz von Bentzel-Weg 12, 55128 Mainz
 Telefon: +49(6131)3926337
 Instant-Messaging: Jabber/XMPP: martin at jabber.uni-mainz.de


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/perl-maintainers/attachments/20181112/b52428b2/attachment-0001.sig>


More information about the Perl-maintainers mailing list