develooper Front page | perl.perl5.porters | Postings from November 2015

[perl #126719] reading a line from a filehandle results in eatingall ram

Thread Previous
Michael Adamcik
November 24, 2015 05:24
[perl #126719] reading a line from a filehandle results in eatingall ram
Message ID:
# New Ticket Created by  Michael Adamcik 
# Please include the string:  [perl #126719]
# in the subject line of all future correspondence about this issue. 
# <URL: >

This is a bug report for perl from,
generated with the help of perlbug 1.40 running under perl 5.20.2.

opening a html file with the encoding detected by io::html, in this case 
":encoding(iso-2022-jp)", reading a (specific) line results in eating up 
all memory/swap.
i reported the bug also to the maintainer of io::html.

i will attach a small script and the html which procuce this behaviour.

[Please do not change anything below this line]
Site configuration information for perl 5.20.2:

Configured by Debian Project at Sat May 16 11:36:34 UTC 2015.

Summary of my perl5 (revision 5 version 20 subversion 2) configuration:

     osname=linux, osvers=3.16.0-4-amd64, 
     uname='linux himalia 3.16.0-4-amd64 #1 smp debian 
3.16.7-ckt9-3~deb8u1 (2015-04-24) x86_64 gnulinux '
     config_args='-Dusethreads -Duselargefiles -Dccflags=-DDEBIAN 
-D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat 
-Werror=format-security -Dldflags= -Wl,-z,relro -Dlddlflags=-shared 
-Wl,-z,relro -Dcccdlflags=-fPIC -Darchname=x86_64-linux-gnu 
-Dprefix=/usr -Dprivlib=/usr/share/perl/5.20 
-Darchlib=/usr/lib/x86_64-linux-gnu/perl/5.20 -Dvendorprefix=/usr 
-Dsiteprefix=/usr/local -Dsitelib=/usr/local/share/perl/5.20.2 
-Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3 
-Dsiteman1dir=/usr/local/man/man1 -Dsiteman3dir=/usr/local/man/man3 
-Duse64bitint -Dman1ext=1 -Dman3ext=3perl 
-Dpager=/usr/bin/sensible-pager -Uafs -Ud_csh -Ud_ualarm -Uusesfio 
-Uusenm -Ui_libutil -Uversiononly -DDEBUGGING=-g -Doptimize=-O2 
-Duseshrplib -des'
     hint=recommended, useposix=true, d_sigaction=define
     useithreads=define, usemultiplicity=define
     use64bitint=define, use64bitall=define, uselongdouble=undef
     usemymalloc=n, bincompat5005=undef
     cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv 
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE 
     optimize='-O2 -g',
     cppflags='-D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv 
-fno-strict-aliasing -pipe -I/usr/local/include'
     ccversion='', gccversion='4.9.2', gccosandvers=''
     intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
     ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', 
     alignbytes=8, prototype=define
   Linker and Libraries:
     ld='cc', ldflags =' -fstack-protector -L/usr/local/lib'
/usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib 
/usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib
     libs=-lgdbm -lgdbm_compat -ldb -ldl -lm -lpthread -lc -lcrypt
     perllibs=-ldl -lm -lpthread -lc -lcrypt, so=so, useshrplib=true,
   Dynamic Linking:
     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
     cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib 

Locally applied patches:
     DEBPKG:debian/cpan_definstalldirs - Provide a sensible INSTALLDIRS 
default for modules installed from CPAN.
     DEBPKG:debian/db_file_ver - Remove 
overly restrictive DB_File version check.
     DEBPKG:debian/doc_info - Replace generic man(1) instructions with 
Debian-specific information.
     DEBPKG:debian/enc2xs_inc - Tweak 
enc2xs to follow symlinks and ignore missing @INC directories.
     DEBPKG:debian/errno_ver - Remove 
Errno version check due to upgrade problems with long-running processes.
     DEBPKG:debian/libperl_embed_doc - 
Note that libperl-dev package is required for embedded linking
     DEBPKG:fixes/respect_umask - Respect umask during installation
     DEBPKG:debian/writable_site_dirs - Set umask approproately for site 
install directories
     DEBPKG:debian/extutils_set_libperl_path - EU:MM: set location of 
libperl.a under /usr/lib
     DEBPKG:debian/no_packlist_perllocal - Don't install .packlist or 
perllocal.pod for perl or vendor
     DEBPKG:debian/prefix_changes - Fiddle with *PREFIX and variables 
written to the makefile
     DEBPKG:debian/fakeroot - Postpone LD_LIBRARY_PATH evaluation to the 
binary targets.
     DEBPKG:debian/instmodsh_doc - Debian policy doesn't install 
.packlist files for core or vendor.
     DEBPKG:debian/ld_run_path - Remove standard libs from LD_RUN_PATH 
as per Debian policy.
     DEBPKG:debian/libnet_config_path - Set location of libnet.cfg to 
/etc/perl/Net as /usr may not be writable.
     DEBPKG:debian/mod_paths - Tweak @INC ordering for Debian
     DEBPKG:debian/module_build_man_extensions - Adjust Module::Build manual page 
extensions for the Debian Perl policy
     DEBPKG:debian/prune_libs - Prune the 
list of libraries wanted to what we actually need.
     DEBPKG:fixes/net_smtp_docs - [ #36038] Document the Net::SMTP 'Port' option
     DEBPKG:debian/perlivp - Make perlivp 
skip include directories in /usr/local
     DEBPKG:debian/deprecate-with-apt - 
Point users to Debian packages of deprecated core modules
     DEBPKG:debian/squelch-locale-warnings - Squelch locale warnings in Debian package 
maintainer scripts
     DEBPKG:debian/skip-upstream-git-tests - Skip tests specific to the 
upstream Git repository
     DEBPKG:debian/patchlevel - List 
packaged patches for 5.20.2-6 in patchlevel.h
     DEBPKG:debian/skip-kfreebsd-crash - 
[perl #96272] Skip a crashing test case in t/op/threads.t on GNU/kFreeBSD
     DEBPKG:fixes/document_makemaker_ccflags - [ #68613] Document that CCFLAGS 
should include $Config{ccflags}
     DEBPKG:debian/find_html2text - 
Configure CPAN::Distribution with correct name of html2text
     DEBPKG:debian/perl5db-x-terminal-emulator.patch - Invoke x-terminal-emulator rather than 
xterm in
     DEBPKG:debian/cpan-missing-site-dirs - Fix CPAN::FirstTime defaults with 
nonexisting site dirs if a parent is writable
     DEBPKG:fixes/memoize_storable_nstore - [ #77790] Memoize::Storable: respect 'nstore' option 
not respected
     DEBPKG:debian/regen-skip - Skip a regeneration check in unrelated 
git repositories
     DEBPKG:fixes/regcomp-mips-optim - [perl #122817] Downgrade the optimization of regcomp.c on 
mips and mipsel due to a gcc-4.9 bug
     DEBPKG:debian/makemaker-pasthru - 
Pass LD settings through to subdirectories
     DEBPKG:fixes/perldoc-less-R - [ #98636] Tell the 'less' pager to allow terminal 
escape sequences
     DEBPKG:fixes/pod_man_reproducible_date - Support POD_MAN_DATE in Pod::Man for the 
left-hand footer
     DEBPKG:fixes/io_uncompress_gunzip_inmemory - [ #95494] Fix gunzip to 
in-memory file handle
     DEBPKG:fixes/socket_test_recv_fix - 
[perl #122657] Compare recv return value to peername in socket test
     DEBPKG:fixes/hurd_socket_recv_todo - 
[perl #122657] TODO checking the result of recv() on hurd
     DEBPKG:fixes/regexp-performance - [0fa70a0] [perl #123743] simpify and speed up 
/.*.../ handling
     DEBPKG:fixes/failed_require_diagnostics - [perl #123270] Report inaccesible file on 
failed require
     DEBPKG:fixes/array-cloning - [perl 
#124127] [902d169] fix cloning arrays with unused elements
     DEBPKG:fixes/perldb-threads - [perl 
#124127] [41ef2c6] lib/ Restore noop lock prototype
     DEBPKG:debian/locale-robustness - 
[perl #124310] Make t/run/locale.t survive missing locales masked by LC_ALL
     DEBPKG:fixes/gcc5-errno - [perl 
#123784] [816b056] Fix generation for gcc-5.0
     DEBPKG:fixes/h2ph-hex-constants - 
[perl #123784] [3bea78d] h2ph: correct handling of hex constants for the 
     DEBPKG:fixes/h2ph-test-inc - [perl 
#123784] [3359391] lib/h2ph.t to test generated t/ instead 
of the system one
     DEBPKG:fixes/podman-utc - Make the 
embedded date from Pod::Man reproducible
     DEBPKG:fixes/podman-utc-docs - 
Documentation and test suite updates for UTC fix
     DEBPKG:fixes/podman-empty-date - 
Support an empty POD_MAN_DATE environment variable
     DEBPKG:fixes/podman-pipe - Better 
errors for man pages from standard input
     DEBPKG:debian/pod2man-customized - Update porting/customized.dat 
for pod2man modifications

@INC for perl 5.20.2:

Environment for perl 5.20.2:
     LANGUAGE (unset)
     LD_LIBRARY_PATH (unset)
     LOGDIR (unset)
     PERL_BADLANG (unset)

Thread Previous Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About