Skip Menu |
 

This queue is for tickets about the IO-Async CPAN distribution.

Report information
The Basics
Id: 115763
Status: new
Priority: 0/
Queue: IO-Async

People
Owner: Nobody in particular
Requestors: leonerd-cpan [...] leonerd.org.uk
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.70
Fixed in: (no value)



Subject: IaResolver breaks over libc upgrades
MIME-Version: 1.0
X-Mailer: MIME-tools 5.504 (Entity 5.504)
Content-Disposition: inline
X-RT-Interface: Web
Message-ID: <rt-4.0.18-7236-1467303772-1052.0-0-0 [...] rt.cpan.org>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
X-RT-Encrypt: 0
X-RT-Sign: 0
Content-Length: 672
Download (untitled) / with headers
text/plain 672b
Due to the way the IaResolver works, an actual getaddrinfo() call is only ever made in the fork()ed sidecar process. This means every newly-created sidecar has to load the same bits of libc from disk every time. On some systems (e.g. my Debian Linux box) that means the nss-dns module is loaded from disk at the time getaddrinfo() is first called, and no earlier. This causes a problem if you've, say, done `apt-get upgrade` and updated libc since you started the master process, because now you're in a state where the nss-dns module that libc attempts to load from disk may not match the other bits of libc that are in memory from the fork()ed process. -- Paul Evans


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.