X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F52leaks.t;h=bd159a7ff337346695512e0f18a2e515ef3d281d;hb=adcc1df0049e0093cb94c867bd2be8c9fe242a61;hp=fffc942d0e718bac3d4f998fe6f56582e6ad97db;hpb=de0edd06a26e5a5f90df64777aeba91968f06c93;p=dbsrgits%2FDBIx-Class.git diff --git a/t/52leaks.t b/t/52leaks.t index fffc942..bd159a7 100644 --- a/t/52leaks.t +++ b/t/52leaks.t @@ -108,6 +108,7 @@ if ( !$ENV{DBICTEST_VIA_REPLICATED} and !DBICTest::RunMode->is_plain ) { require DBI; require DBD::SQLite; require Moo; + require Math::BigInt; %$weak_registry = (); } @@ -460,6 +461,15 @@ for my $addr (keys %$weak_registry) { delete $weak_registry->{$addr} unless $cleared->{bheos_pptiehinthashfieldhash}++; } + elsif ( + $names =~ /^Data::Dumper/m + and + $weak_registry->{$addr}{stacktrace} =~ /\bDBIx::Class::SQLMaker::Util::lax_serialize\b/ + ) { + # only clear one object of a specific behavior - more would indicate trouble + delete $weak_registry->{$addr} + unless $cleared->{dd_lax_serializer}++; + } elsif ($names =~ /^DateTime::TimeZone::UTC/m) { # DT is going through a refactor it seems - let it leak zones for now delete $weak_registry->{$addr};