[MacPorts] #22959: Too many open files error while doing a mass forced upgrade

MacPorts noreply at macports.org
Sun Dec 20 15:51:15 PST 2009


#22959: Too many open files error while doing a mass forced upgrade
-----------------------------------------+----------------------------------
 Reporter:  dave.evans55@…               |       Owner:  macports-tickets@…                   
     Type:  defect                       |      Status:  new                                  
 Priority:  Normal                       |   Milestone:                                       
Component:  base                         |     Version:  1.8.1                                
 Keywords:  force upgrade                |        Port:                                       
-----------------------------------------+----------------------------------
Changes (by ryandesign@…):

 * cc: ryandesign@… (added)


Old description:

> I have 641 ports installed.
>
> I deleted all the inactive ports.
>
> I then ran a command to force upgrade them all with the +universal
> variant:
>
> script bigbuild.log sudo port -pdk upgrade --force installed  +universal
>
> After a few hours of compilation an error occurred:
>
> ./libtool: cannot make pipe for command substitution: Too many open files
>
> I increased the ulimit(1) open files limit for the process from 256 to
> 10000
> and ran the upgrade command again.  While it was running I monitored the
> open files for the tclsh process using lsof:
>
> I noticed that there were a lot of instances of
>
> /opt/local/var/macports/receipts/file_map.db
>
> open.
>
> I counted them with:
>
> sudo lsof | grep -i tcl | grep receipts | wc -l
>
> and there were 272 instances of this file open.
>
> I think there is an open file leak in port.

New description:

 I have 641 ports installed.

 I deleted all the inactive ports.

 I then ran a command to force upgrade them all with the +universal
 variant:

 {{{
 script bigbuild.log sudo port -pdk upgrade --force installed  +universal
 }}}

 After a few hours of compilation an error occurred:

 {{{
 ./libtool: cannot make pipe for command substitution: Too many open files
 }}}

 I increased the ulimit(1) open files limit for the process from 256 to
 10000
 and ran the upgrade command again.  While it was running I monitored the
 open files for the tclsh process using lsof:

 I noticed that there were a lot of instances of

 /opt/local/var/macports/receipts/file_map.db

 open.

 I counted them with:

 {{{
 sudo lsof | grep -i tcl | grep receipts | wc -l
 }}}

 and there were 272 instances of this file open.

 I think there is an open file leak in port.

--

-- 
Ticket URL: <http://trac.macports.org/ticket/22959#comment:1>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list