Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

599 Internal Exception - no message #93

Closed
zsan opened this issue Oct 18, 2019 · 23 comments
Closed

599 Internal Exception - no message #93

zsan opened this issue Oct 18, 2019 · 23 comments

Comments

@zsan
Copy link

zsan commented Oct 18, 2019

Hi,

I am trying to plenv install and i have this error message, i am not sure if this error because of my machine's environments or something else or network failure.

Do you have any ideas ?

developer@13b0bedc1061:~$ plenv install 5.28.2
Installing 5.28.2 as 5.28.2
/usr/bin/perl -- /home/developer/.plenv/plugins/perl-build/bin/perl-build --symlink-devel-executables --build-dir /home/developer/.plenv/build/1571414670.43/ --tarball-dir /home/developer/.plenv/cache/ -Dversiononly 5.28.2 /home/developer/.plenv/versions/5.28.2
Fetching 5.28.2 as /home/developer/.plenv/cache/perl-5.28.2.tar.gz (https://cpan.metacpan.org/authors/id/S/SH/SHAY/perl-5.28.2.tar.gz)
Cannot get file from https://cpan.metacpan.org/authors/id/S/SH/SHAY/perl-5.28.2.tar.gz: 599 Internal Exception,  at /home/developer/.plenv/plugins/perl-build/bin/perl-build line 10353.
ABORT
@charsbar
Copy link
Collaborator

@zsan Could you update your perl-build in .plenv/plugins first?

cf. miyagawa/HTTP-Tinyish#14

@zsan
Copy link
Author

zsan commented Oct 18, 2019

@charsbar

But i think i am with the latest perl-build, i've just clone perl-build few minutes ago.

@zsan
Copy link
Author

zsan commented Oct 18, 2019

Just to update,

I think it fails randomly

@skaji
Copy link
Collaborator

skaji commented Oct 18, 2019

  • Do you use docker? If so, then what image do you use?
  • What is your OS?
  • What is your outputs of the following commands?
    $ wget --version
    $ curl --version 
    $ /usr/bin/perl -V
    $ /usr/bin/perl -MHTTP::Tiny\ 99999999
    $ /usr/bin/perl -MIO::Socket::SSL\ 99999999
    $ /usr/bin/perl -MNet::SSLeay\ 99999999
    $ /usr/bin/perl -MLWP::UserAgent\ 9999999
    $ /usr/bin/perl -MLWP::Protocol::https\ 999999999
    $ curl -fsSLO https://cpan.metacpan.org/authors/id/S/SH/SHAY/perl-5.28.2.tar.gz
    

@zsan
Copy link
Author

zsan commented Oct 18, 2019

@skaji

curl --version

curl 7.58.0 (x86_64-pc-linux-gnu) libcurl/7.58.0 OpenSSL/1.1.1 zlib/1.2.11 libidn2/2.0.4 libpsl/0.19.1 (+libidn2/2.0.4) nghttp2/1.30.0 librtmp/2.3
Release-Date: 2018-01-24
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets HTTPS-proxy PSL

wget --version
bash: wget: command not found


/usr/bin/perl -MHTTP::Tiny\ 99999999
HTTP::Tiny version 99999999 required--this is only version 0.070.


/usr/bin/perl -MIO::Socket::SSL\ 99999999
Can't locate IO/Socket/SSL.pm in @INC (you may need to install the IO::Socket::SSL module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.1 /usr/local/share/perl/5.26.1 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base).
BEGIN failed--compilation aborted.


/usr/bin/perl -MNet::SSLeay\ 99999999
Can't locate Net/SSLeay.pm in @INC (you may need to install the Net::SSLeay module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.1 /usr/local/share/perl/5.26.1 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base).
BEGIN failed--compilation aborted.


/usr/bin/perl -MLWP::UserAgent\ 9999999
Can't locate LWP/UserAgent.pm in @INC (you may need to install the LWP::UserAgent module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.1 /usr/local/share/perl/5.26.1 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base).
BEGIN failed--compilation aborted.


/usr/bin/perl -MLWP::Protocol::https\ 999999999
Can't locate LWP/Protocol/https.pm in @INC (you may need to install the LWP::Protocol::https module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.1 /usr/local/share/perl/5.26.1 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base).
BEGIN failed--compilation aborted.


curl -fsSLO https://cpan.metacpan.org/authors/id/S/SH/SHAY/perl-5.28.2.tar.gz
ls -l
total 17304
-rw-r--r-- 1 developer developer 17715666 Oct 18 21:53 perl-5.28.2.tar.gz    

@zsan
Copy link
Author

zsan commented Oct 18, 2019

/usr/bin/perl -V
Summary of my perl5 (revision 5 version 26 subversion 1) configuration:

  Platform:
    osname=linux
    osvers=4.9.0
    archname=x86_64-linux-gnu-thread-multi
    uname='linux localhost 4.9.0 #1 smp debian 4.9.0 x86_64 gnulinux '
    config_args='-Dusethreads -Duselargefiles -Dcc=x86_64-linux-gnu-gcc -Dcpp=x86_64-linux-gnu-cpp -Dld=x86_64-linux-gnu-gcc -Dccflags=-DDEBIAN -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/perl-hx1dVS/perl-5.26.1=. -fstack-protector-strong -Wformat -Werror=format-security -Dldflags= -Wl,-Bsymbolic-functions -Wl,-z,relro -Dlddlflags=-shared -Wl,-Bsymbolic-functions -Wl,-z,relro -Dcccdlflags=-fPIC -Darchname=x86_64-linux-gnu -Dprefix=/usr -Dprivlib=/usr/share/perl/5.26 -Darchlib=/usr/lib/x86_64-linux-gnu/perl/5.26 -Dvendorprefix=/usr -Dvendorlib=/usr/share/perl5 -Dvendorarch=/usr/lib/x86_64-linux-gnu/perl5/5.26 -Dsiteprefix=/usr/local -Dsitelib=/usr/local/share/perl/5.26.1 -Dsitearch=/usr/local/lib/x86_64-linux-gnu/perl/5.26.1 -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 -Ui_xlocale -Uversiononly -DDEBUGGING=-g -Doptimize=-O2 -dEs -Duseshrplib -Dlibperl=libperl.so.5.26.1'
    hint=recommended
    useposix=true
    d_sigaction=define
    useithreads=define
    usemultiplicity=define
    use64bitint=define
    use64bitall=define
    uselongdouble=undef
    usemymalloc=n
    default_inc_excludes_dot=define
    bincompat5005=undef
  Compiler:
    cc='x86_64-linux-gnu-gcc'
    ccflags ='-D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
    optimize='-O2 -g'
    cppflags='-D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include'
    ccversion=''
    gccversion='7.3.0'
    gccosandvers=''
    intsize=4
    longsize=8
    ptrsize=8
    doublesize=8
    byteorder=12345678
    doublekind=3
    d_longlong=define
    longlongsize=8
    d_longdbl=define
    longdblsize=16
    longdblkind=3
    ivtype='long'
    ivsize=8
    nvtype='double'
    nvsize=8
    Off_t='off_t'
    lseeksize=8
    alignbytes=8
    prototype=define
  Linker and Libraries:
    ld='x86_64-linux-gnu-gcc'
    ldflags =' -fstack-protector-strong -L/usr/local/lib'
    libpth=/usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/7/include-fixed /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
    libc=libc-2.27.so
    so=so
    useshrplib=true
    libperl=libperl.so.5.26
    gnulibc_version='2.27'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs
    dlext=so
    d_dlsymun=undef
    ccdlflags='-Wl,-E'
    cccdlflags='-fPIC'
    lddlflags='-shared -L/usr/local/lib -fstack-protector-strong'


Characteristics of this binary (from libperl):
  Compile-time options:
    HAS_TIMES
    MULTIPLICITY
    PERLIO_LAYERS
    PERL_COPY_ON_WRITE
    PERL_DONT_CREATE_GVSV
    PERL_IMPLICIT_CONTEXT
    PERL_MALLOC_WRAP
    PERL_OP_PARENT
    PERL_PRESERVE_IVUV
    USE_64_BIT_ALL
    USE_64_BIT_INT
    USE_ITHREADS
    USE_LARGE_FILES
    USE_LOCALE
    USE_LOCALE_COLLATE
    USE_LOCALE_CTYPE
    USE_LOCALE_NUMERIC
    USE_LOCALE_TIME
    USE_PERLIO
    USE_PERL_ATOF
    USE_REENTRANT_API
  Locally applied patches:
    DEBPKG:debian/cpan_definstalldirs - Provide a sensible INSTALLDIRS default for modules installed from CPAN.
    DEBPKG:debian/db_file_ver - https://bugs.debian.org/340047 Remove overly restrictive DB_File version check.
    DEBPKG:debian/doc_info - Replace generic man(1) instructions with Debian-specific information.
    DEBPKG:debian/enc2xs_inc - https://bugs.debian.org/290336 Tweak enc2xs to follow symlinks and ignore missing @INC directories.
    DEBPKG:debian/errno_ver - https://bugs.debian.org/343351 Remove Errno version check due to upgrade problems with long-running processes.
    DEBPKG:debian/libperl_embed_doc - https://bugs.debian.org/186778 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/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/perlivp - https://bugs.debian.org/510895 Make perlivp skip include directories in /usr/local
    DEBPKG:debian/deprecate-with-apt - https://bugs.debian.org/747628 Point users to Debian packages of deprecated core modules
    DEBPKG:debian/squelch-locale-warnings - https://bugs.debian.org/508764 Squelch locale warnings in Debian package maintainer scripts
    DEBPKG:debian/patchlevel - https://bugs.debian.org/567489 List packaged patches for 5.26.1-6ubuntu0.3 in patchlevel.h
    DEBPKG:fixes/document_makemaker_ccflags - https://bugs.debian.org/628522 [rt.cpan.org #68613] Document that CCFLAGS should include $Config{ccflags}
    DEBPKG:debian/find_html2text - https://bugs.debian.org/640479 Configure CPAN::Distribution with correct name of html2text
    DEBPKG:debian/perl5db-x-terminal-emulator.patch - https://bugs.debian.org/668490 Invoke x-terminal-emulator rather than xterm in perl5db.pl
    DEBPKG:debian/cpan-missing-site-dirs - https://bugs.debian.org/688842 Fix CPAN::FirstTime defaults with nonexisting site dirs if a parent is writable
    DEBPKG:fixes/memoize_storable_nstore - [rt.cpan.org #77790] https://bugs.debian.org/587650 Memoize::Storable: respect 'nstore' option not respected
    DEBPKG:debian/makemaker-pasthru - https://bugs.debian.org/758471 Pass LD settings through to subdirectories
    DEBPKG:debian/makemaker-manext - https://bugs.debian.org/247370 Make EU::MakeMaker honour MANnEXT settings in generated manpage headers
    DEBPKG:debian/kfreebsd-softupdates - https://bugs.debian.org/796798 Work around Debian Bug#796798
    DEBPKG:fixes/autodie-scope - https://bugs.debian.org/798096 Fix a scoping issue with "no autodie" and the "system" sub
    DEBPKG:fixes/memoize-pod - [rt.cpan.org #89441] Fix POD errors in Memoize
    DEBPKG:debian/hurd-softupdates - https://bugs.debian.org/822735 Fix t/op/stat.t failures on hurd
    DEBPKG:fixes/math_complex_doc_great_circle - https://bugs.debian.org/697567 [rt.cpan.org #114104] Math::Trig: clarify definition of great_circle_midpoint
    DEBPKG:fixes/math_complex_doc_see_also - https://bugs.debian.org/697568 [rt.cpan.org #114105] Math::Trig: add missing SEE ALSO
    DEBPKG:fixes/math_complex_doc_angle_units - https://bugs.debian.org/731505 [rt.cpan.org #114106] Math::Trig: document angle units
    DEBPKG:fixes/cpan_web_link - https://bugs.debian.org/367291 CPAN: Add link to main CPAN web site
    DEBPKG:fixes/time_piece_doc - https://bugs.debian.org/817925 Time::Piece: Improve documentation for add_months and add_years
    DEBPKG:fixes/extutils_makemaker_reproducible - https://bugs.debian.org/835815 https://bugs.debian.org/834190 Make perllocal.pod files reproducible
    DEBPKG:fixes/file_path_hurd_errno - File-Path: Fix test failure in Hurd due to hard-coded ENOENT
    DEBPKG:debian/hppa_op_optimize_workaround - https://bugs.debian.org/838613 Temporarily lower the optimization of op.c on hppa due to gcc-6 problems
    DEBPKG:debian/installman-utf8 - https://bugs.debian.org/840211 Generate man pages with UTF-8 characters
    DEBPKG:fixes/file_path_chmod_race - https://bugs.debian.org/863870 [rt.cpan.org #121951] Prevent directory chmod race attack.
    DEBPKG:fixes/extutils_file_path_compat - Correct the order of tests of chmod(). (#294)
    DEBPKG:fixes/getopt-long-2 - [rt.cpan.org #120300] Withdraw part of commit 5d9947fb445327c7299d8beb009d609bc70066c0, which tries to implement more GNU getopt_long campatibility. GNU
    DEBPKG:fixes/getopt-long-3 - provide a default value for optional arguments
    DEBPKG:fixes/getopt-long-4 - https://bugs.debian.org/864544 [rt.cpan.org #122068] Fix issue #122068.
    DEBPKG:fixes/test-builder-reset - https://bugs.debian.org/865894 Reset inside subtest maintains parent
    DEBPKG:debian/hppa_opmini_optimize_workaround - https://bugs.debian.org/869122 Lower the optimization level of opmini.c on hppa
    DEBPKG:debian/sh4_op_optimize_workaround - https://bugs.debian.org/869373 Also lower the optimization level of op.c and opmini.c on sh4
    DEBPKG:fixes/json-pp-example - [rt.cpan.org #92793] https://bugs.debian.org/871837 fix RT-92793: bug in SYNOPSIS
    DEBPKG:debian/perldoc-pager - https://bugs.debian.org/870340 [rt.cpan.org #120229] Fix perldoc terminal escapes when sensible-pager is less
    DEBPKG:debian/prune_libs - https://bugs.debian.org/128355 Prune the list of libraries wanted to what we actually need.
    DEBPKG:debian/configure-regen - https://bugs.debian.org/762638 Regenerate Configure et al. after probe unit changes
    DEBPKG:fixes/rename-filexp.U-phase1 - regen-configure: rename filexp.U to filexp_path.U, phase 1
    DEBPKG:fixes/rename-filexp.U-phase2 - regen-configure: rename filexp.U to filexp_path.U, phase 2
    DEBPKG:fixes/packaging_test_skips - Skip various tests if PERL_BUILD_PACKAGING is set
    DEBPKG:debian/mod_paths - Tweak @INC ordering for Debian
    DEBPKG:fixes/encode-alias-regexp - https://bugs.debian.org/880085 fix https://github.com/dankogai/p5-encode/issues/127
    DEBPKG:fixes/regex-memory-leak - [910a6a8] https://bugs.debian.org/891196 [perl #132892] perl #132892: avoid leak by mortalizing temporary copy of pattern
    DEBPKG:fixes/CVE-2018-6797 - [perl #132227] (perl #132227) restart a node if we change to uni rules within the node and encounter a sharp S
    DEBPKG:fixes/CVE-2018-6798/pt1 - [perl #132063] Heap buffer overflow
    DEBPKG:fixes/CVE-2018-6798/pt2 - [perl #132063] 5.26.1: fix TRIE_READ_CHAR and DECL_TRIE_TYPE to account for non-utf8 target
    DEBPKG:fixes/CVE-2018-6798/pt3 - [perl #132063] (perl #132063) we should no longer warn for this code
    DEBPKG:fixes/CVE-2018-6798/pt4 - [perl #132063] utf8.c: Don't dump malformation past first NUL
    DEBPKG:fixes/CVE-2018-6913 - [perl #131844] (perl #131844) fix various space calculation issues in pp_pack.c
    DEBPKG:fixes/CVE-2018-12015.patch - [PATCH] [PATCH] Remove existing files before overwriting them
    DEBPKG:fixes/CVE-2018-18311.patch - [PATCH] Perl_my_setenv(); handle integer wrap
    DEBPKG:fixes/CVE-2018-18312.patch - [PATCH 242/242] PATCH: [perl #133423] for 5.26 maint
    DEBPKG:fixes/CVE-2018-18313.patch - [PATCH] regcomp.c: Convert some strchr to memchr
    DEBPKG:fixes/CVE-2018-18314.patch - [PATCH] fix #131649 - extended charclass can trigger assert
  Built under linux
  Compiled at Nov 19 2018 15:54:44
  @INC:
    /etc/perl
    /usr/local/lib/x86_64-linux-gnu/perl/5.26.1
    /usr/local/share/perl/5.26.1
    /usr/lib/x86_64-linux-gnu/perl5/5.26
    /usr/share/perl5
    /usr/lib/x86_64-linux-gnu/perl/5.26
    /usr/share/perl/5.26
    /usr/local/lib/site_perl
    /usr/lib/x86_64-linux-gnu/perl-base

@skaji
Copy link
Collaborator

skaji commented Oct 18, 2019

Do you use docker? If so, then what image do you use?

@skaji
Copy link
Collaborator

skaji commented Oct 18, 2019

I suspect this is just a network failure.

@zsan
Copy link
Author

zsan commented Oct 18, 2019

Do you use docker? If so, then what image do you use?

Yes i am using docker -> FROM ubuntu:18.04

@skaji
Copy link
Collaborator

skaji commented Oct 18, 2019

Then, can you provide Dockerfile that reproduces this issue?

@zsan
Copy link
Author

zsan commented Oct 18, 2019

FROM ubuntu:18.04

# disable tzdata interactive install
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update -qq && apt-get install -y git curl libssl-dev

# for postgres
RUN apt-get install -y libpq-dev build-essential

# for nokogiri
RUN apt-get install -y libxml2-dev libxslt1-dev

# for perl
RUN apt-get install -y tzdata libncurses5-dev libncursesw5-dev libreadline-dev \
  zlib1g-dev libexpat1-dev xmlsec1

# create user
RUN useradd -ms /bin/bash developer
USER developer
WORKDIR /home/developer

ENV PLENV_ROOT /home/developer/.plenv
ENV PATH $PLENV_ROOT/bin:$PLENV_ROOT/shims:$PATH

RUN git clone git://github.com/tokuhirom/plenv.git $PLENV_ROOT \
  && git clone git://github.com/tokuhirom/Perl-Build.git $PLENV_ROOT/plugins/perl-build \
  && git clone git://github.com/miyagawa/plenv-contrib.git $PLENV_ROOT/plugins/plenv-contrib

RUN echo 'eval "$(plenv init -)"' >> ~/.profile

RUN plenv install 5.28.2 && plenv rehash

@skaji
Copy link
Collaborator

skaji commented Oct 18, 2019

@zsan Thanks.

I have executed docker build . 3 times.

1st
https://gist.github.com/skaji/554392e4f6288c6e242d105bc7636d9b -> No problem

2nd (with appending RUN echo no cache 1 so that the last line is not cached)
https://gist.github.com/skaji/441b436c8d5c0632c988c27fffd031c6 -> No problem

3rd (with appending RUN echo no cache 2 so that the last line is not cached)
https://gist.github.com/skaji/a3f0a225a32bb1624090fd69bb810731 -> No problem

I have not seen any failure.
So again, I suspect your environment has some network issue.

@zsan
Copy link
Author

zsan commented Oct 19, 2019

@skaji Thanks.

Will dig more on this, hope can reproduce the issue

@skaji
Copy link
Collaborator

skaji commented Dec 7, 2019

@zsan Any news?

@zsan
Copy link
Author

zsan commented Dec 14, 2019

@skaji
I am sorry for the delay, i've been so busy with my project.

Yes the issue is happening randomly, so i ended up with downloading the perl package manually.

Also i manually create specific directory for the file, RUN mkdir $PLENV_ROOT/cache

FROM perl:5.30

RUN apt-get -y update
RUN apt-get install -y sqlite3 libsqlite3-dev
RUN apt-get install -y gearman-job-server

RUN mkdir /root/my_app/
WORKDIR /root/my_app/

ENV PLENV_ROOT /root/my_app/.plenv
ENV PATH $PLENV_ROOT/bin:$PLENV_ROOT/shims:$PATH

RUN git clone git://github.com/tokuhirom/plenv.git $PLENV_ROOT \
  && git clone git://github.com/tokuhirom/Perl-Build.git $PLENV_ROOT/plugins/perl-build \
  && git clone git://github.com/miyagawa/plenv-contrib.git $PLENV_ROOT/plugins/plenv-contrib

RUN mkdir $PLENV_ROOT/cache

RUN curl https://www.cpan.org/src/5.0/perl-5.30.0.tar.gz -o $PLENV_ROOT/cache/perl-5.30.0.tar.gz

# Get our Perl setup
RUN plenv install 5.30.0 && plenv rehash

RUN plenv local 5.30.0

RUN plenv install-cpanm

RUN plenv rehash

@jjn1056
Copy link

jjn1056 commented Jan 10, 2020

In case anyone else finds this, I'm also getting it just in my case its nearly every time. Happens on my Centos8 virtual machine (virtual box). I'm pretty sure that '599 Internal Exception ' is coming from HTTP::Tiny. Perl-Build uses HTTP::Tinyish which is a an API wrapper over LWP, HTTP-Tiny and a few other things (it chooses the first it can find which will often be HTTP-Tiny since you get that with most Perl installs. HTTP::Tiny documentation says that 599 Error happens when you timeout and the timeout threshold is like 60 seconds by default.

One thing that might be a good addition is to have some way for Perl-Build to expose a few settings that get passed down to HTTP-Tinyish, such as timeout. Some of us on slow connections will find 60 seconds is too tight

Could be other stuff, HTTP::Tiny docs say

Exceptions from max_size, timeout or other errors will result in a pseudo-HTTP status code of 599 and a reason of "Internal Exception". The content field in the response will contain the text of the exception.

Perhaps we could better expose the content field when there's an error so that we can debug this better. I could probably make a patch for some of this if people think its a good idea.

IN the meantime I worked around by installing LWP which has a more generous 180 second timeout. That seemed to fix my issues most of the time.

@skaji
Copy link
Collaborator

skaji commented Jan 10, 2020

@skaji
Copy link
Collaborator

skaji commented Jan 10, 2020

Perl-Build tries to dump the content if status code = 599.

my $msg = $response->{status} == 599 ? ", $response->{content}" : "";

@skaji
Copy link
Collaborator

skaji commented Jan 11, 2020

When the backend is curl, this patch may give us error in more detail.
miyagawa/HTTP-Tinyish#18

@skaji
Copy link
Collaborator

skaji commented Jan 11, 2020

I'm also getting it just in my case its nearly every time

@jjn1056 Could you provide Dockerfile or something?

@simonmeggle
Copy link

FYI: make sure that you did not clone the "latest" release (1.30) but the master branch if you want to install Perl > 5.30. In my case I had release 1.30 which only supports until v5.29. In this case you are getting this error:

[cpan_perl_releases] not found the tarball for perl-5.30.2
[metacpan] 599 Internal Exception, https://fastapi.metacpan.org/v1/release/_search,
ERROR: Cannot find the tarball for perl-5.30.2

CPAN::Perl::Releases::perl_tarballs is not able to resolve the tarball name from the given version and exits.

@skaji
Copy link
Collaborator

skaji commented Jul 12, 2020

I've just released Perl-Build 1.31 https://metacpan.org/release/SKAJI/Perl-Build-1.31
which will emit more useful error message, I hope.

@zsan Can you try plenv install again with Perl-Build 1.31 ?

@skaji
Copy link
Collaborator

skaji commented Nov 28, 2020

Closing this issue because it has not had recent activity.

@skaji skaji closed this as completed Nov 28, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants