Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 41286

Summary: RSYNC_RATELIMIT does not apply to ebuild.sh wget'ing distfiles ..
Product: Portage Development Reporter: Gavin <colonel_dolphin>
Component: Enhancement/Feature RequestsAssignee: Portage team <dev-portage>
Status: RESOLVED INVALID    
Severity: enhancement    
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Gavin 2004-02-11 12:29:01 UTC
RSYNC_RATELIMIT was a good idea to add to ebuild.sh.

However, the goal is not fully achieved yet.  Try emerging a kernel or using emerge-webrsync.  Unlike "emerge sync", emerging a kernel uses wget and runs at full speed, saturating my link (a bad thing IMHO).

mirror.py:        portage.spawn("wget -q -P "+str(self.mydest)+" "+self.myuri, free=1)

Reproducible: Always
Steps to Reproduce:
emerge gentoo-dev-sources
Actual Results:  
spawns wget which runs without a --limit-rate= option
ignores the RSYNC_RATELIMIT .. maybe we need a WGET_RATELIMIT in make.conf?

Expected Results:  
default to using --limit-rate=$RSYNC_RATELIMIT

 emerge info
Portage 2.0.50 (default-x86-1.4, gcc-3.3.2, glibc-unavailable, 2.6.1-gentoo)
=================================================================
System uname: 2.6.1-gentoo i686 AMD Athlon(tm) XP 1700+
Gentoo Base System version 1.4.3.13
ccache version 2.3 [disabled]
Autoconf: sys-devel/autoconf-2.59
Automake: sys-devel/automake-1.8.2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS=" -Wall -fstack-protector -pipe -fomit-frame-pointer -Os -march=athlon-
xp -mfpmath=sse"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/
config /var/bind /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-Wall -fstack-protector -pipe -fomit-frame-pointer -Os -march=athlon-
xp -mfpmath=sse"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs cachecc1 noclean sandbox"
GENTOO_MIRRORS="ftp://gentoo.ccccom.com"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow acl adns apache2 apm berkdb bindist crypt curl directfb doc ethereal 
fam fastcgi fbcon gbphp gd gdbm ggi gif gpm innodb jikes jpeg libg++ libwww 
maildir mcal memlimit mmx mpi mysql ncurses nptl pam pdflib perl php plotutils 
png prelude python readline slang spell sse ssl svga tcpd threads tiff truetype 
usb x86 xml2 zlib"
Comment 1 Marius Mauch (RETIRED) gentoo-dev 2004-02-11 12:42:21 UTC
ok, several points here:
a) there is no RSYNC stuff in ebuild.sh
b) adding an rsync option to a wget call doesn't make much sense IMO
c) portage itself doesn't use mirror.py
d) emerge <package> is using exactly what you defined in FETCHCOMMAND
e) I don't know what package uses mirror.py, but I'd say rather then using a RSYNC_* option there it should use FETCHCOMMAND too

I'm only keeping this open for point e)
Comment 2 Nicholas Jones (RETIRED) gentoo-dev 2004-02-11 12:54:01 UTC
Set it in fetchcommand. We will not attempt to figure out
the option for whatever downloader you might be using at
the moment.
Comment 3 Gavin 2004-02-13 14:05:32 UTC
I agree with all points from Marius and Nicholas.

BTW, the wget download rate is not configurable in mirror.py, and it is part of portage.

# qpkg -f /usr/lib/portage/bin/mirror.py
sys-apps/portage *