Bug 894630 - [abrt] yum-3.4.3-30.fc17: grabber.py:2320:update:OverflowError: (34, "Le r\xc3\xa9sultat num\xc3\xa9rique est en dehors de l'intervalle")
Summary: [abrt] yum-3.4.3-30.fc17: grabber.py:2320:update:OverflowError: (34, "Le r\xc...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: yum
Version: 17
Hardware: x86_64
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Packaging Maintenance Team
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: abrt_hash:910753e07c0aaa56ad848c8529f...
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-01-12 19:01 UTC by Bernard Rodier
Modified: 2014-06-04 07:54 UTC (History)
5 users (show)

Fixed In Version: python-urlgrabber-3.10.1-0.fc20
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-10-22 04:58:26 UTC


Attachments (Terms of Use)
File: executable (8 bytes, text/plain)
2013-01-12 19:01 UTC, Bernard Rodier
no flags Details
File: dso_list (38 bytes, text/plain)
2013-01-12 19:01 UTC, Bernard Rodier
no flags Details
File: environ (2.29 KB, text/plain)
2013-01-12 19:01 UTC, Bernard Rodier
no flags Details
File: smolt_data (3.44 KB, text/plain)
2013-01-12 19:01 UTC, Bernard Rodier
no flags Details
File: core_backtrace (2.10 KB, text/plain)
2013-01-12 19:01 UTC, Bernard Rodier
no flags Details

Description Bernard Rodier 2013-01-12 19:01:30 UTC
Version-Release number of selected component:
yum-3.4.3-30.fc17

Additional info:
libreport version: 2.0.18
abrt_version:   2.0.18
cmdline:        /usr/bin/python /bin/yum install codeblock
kernel:         3.6.7-4.fc17.x86_64

backtrace:
:grabber.py:2320:update:OverflowError: (34, "Le r\xc3\xa9sultat num\xc3\xa9rique est en dehors de l'intervalle")
:
:Traceback (most recent call last):
:  File "/bin/yum", line 29, in <module>
:    yummain.user_main(sys.argv[1:], exit_code=True)
:  File "/usr/share/yum-cli/yummain.py", line 319, in user_main
:    errcode = main(args)
:  File "/usr/share/yum-cli/yummain.py", line 144, in main
:    result, resultmsgs = base.doCommands()
:  File "/usr/share/yum-cli/cli.py", line 485, in doCommands
:    return self.yum_cli_commands[self.basecmd].doCommand(self, self.basecmd, self.extcmds)
:  File "/usr/share/yum-cli/yumcommands.py", line 343, in doCommand
:    return base.installPkgs(extcmds, basecmd=basecmd)
:  File "/usr/share/yum-cli/cli.py", line 853, in installPkgs
:    txmbrs = self.install(pattern=arg)
:  File "/usr/lib/python2.7/site-packages/yum/__init__.py", line 4405, in install
:    mypkgs = self.pkgSack.returnPackages(patterns=pats,
:  File "/usr/lib/python2.7/site-packages/yum/__init__.py", line 1013, in <lambda>
:    pkgSack = property(fget=lambda self: self._getSacks(),
:  File "/usr/lib/python2.7/site-packages/yum/__init__.py", line 779, in _getSacks
:    self.repos.populateSack(which=repos)
:  File "/usr/lib/python2.7/site-packages/yum/repos.py", line 309, in populateSack
:    self.doSetup()
:  File "/usr/lib/python2.7/site-packages/yum/repos.py", line 134, in doSetup
:    self.retrieveAllMD()
:  File "/usr/lib/python2.7/site-packages/yum/repos.py", line 84, in retrieveAllMD
:    dl = repo._async and repo._commonLoadRepoXML(repo)
:  File "/usr/lib/python2.7/site-packages/yum/yumRepo.py", line 1365, in _commonLoadRepoXML
:    result = self._getFileRepoXML(local, text)
:  File "/usr/lib/python2.7/site-packages/yum/yumRepo.py", line 1143, in _getFileRepoXML
:    size=102400) # setting max size as 100K
:  File "/usr/lib/python2.7/site-packages/yum/yumRepo.py", line 958, in _getFile
:    **kwargs
:  File "/usr/lib/python2.7/site-packages/urlgrabber/mirror.py", line 424, in urlgrab
:    return self._mirror_try(func, url, kw)
:  File "/usr/lib/python2.7/site-packages/urlgrabber/mirror.py", line 402, in _mirror_try
:    return func_ref( *(fullurl,), **kwargs )
:  File "/usr/lib/python2.7/site-packages/urlgrabber/grabber.py", line 1126, in urlgrab
:    return self._retry(opts, retryfunc, url, filename)
:  File "/usr/lib/python2.7/site-packages/urlgrabber/grabber.py", line 1020, in _retry
:    r = apply(func, (opts,) + args, {})
:  File "/usr/lib/python2.7/site-packages/urlgrabber/grabber.py", line 1117, in retryfunc
:    _TH.update(url, fo._amount_read - fo._reget_length, time.time() - tm, None)
:  File "/usr/lib/python2.7/site-packages/urlgrabber/grabber.py", line 2320, in update
:    k1 = 2**((ts - now) / default_grabber.opts.half_life)
:OverflowError: (34, "Le r\xc3\xa9sultat num\xc3\xa9rique est en dehors de l'intervalle")
:
:Local variables in innermost frame:
:ug_err: None
:dl_size: 951
:url: 'http://dl.google.com/linux/chrome/rpm/stable/x86_64/repodata/repomd.xml'
:ts: 4366898605
:baseurl: None
:host: 'dl.google.com'
:dl_time: 0.0841209888458252
:fail: 1
:now: 1358013924.866992
:speed: 136305

Comment 1 Bernard Rodier 2013-01-12 19:01:35 UTC
Created attachment 677463 [details]
File: executable

Comment 2 Bernard Rodier 2013-01-12 19:01:40 UTC
Created attachment 677465 [details]
File: dso_list

Comment 3 Bernard Rodier 2013-01-12 19:01:42 UTC
Created attachment 677467 [details]
File: environ

Comment 4 Bernard Rodier 2013-01-12 19:01:44 UTC
Created attachment 677468 [details]
File: smolt_data

Comment 5 Bernard Rodier 2013-01-12 19:01:49 UTC
Created attachment 677470 [details]
File: core_backtrace

Comment 6 Zdeněk Pavlas 2013-01-14 08:39:50 UTC
Thanks for the report!

Could you add your /var/cache/yum/i386/17/timedhosts file, please?
I'm curious where "ts = 4366898605" came from..

Comment 7 Bernard Rodier 2013-01-14 19:15:49 UTC
I Have no /var/cache/yum/i386 directory,

I have put the timedhosts bellow :

[bernard@coruscant 17]$ pwd
/var/cache/yum/x86_64/17
[bernard@coruscant 17]$ cat timedhosts 
fedora.uib.no 875622 1 4366899157
ftp.astral.ro 0 1 4366899157
mirror.karneval.cz 142 1 4366899184
ftp.proxad.net 712412 0 1354105208
mirror.switch.ch 20068 1 4366899157
mirror.proserve.nl 1315985 2 4366899157
mirror.yandex.ru 0 2 4366899190
rpmfusion.famillecollet.com 107460 2 4366899142
www.fedora.is 17690 1 4366899190
mirror.nl.leaseweb.net 1267845 2 4366899157
fedora.tu-chemnitz.de 452617 2 4366899157
ftp.upjs.sk 0 1 4366899190
mirrors.ircam.fr 1013105 0 1354105452
mirror01.th.ifl.net 339715 2 4366899157
mirror.telepoint.bg 33041 2 4366899185
ftp.icm.edu.pl 0 1 4366899190
download1.rpmfusion.org 361252 3 4366899142
mirrors.coreix.net 0 1 4366899190
fr2.rpmfind.net 610239 3 4366899142
dl.google.com 136305 1 4366898605
mirrors.fedoraproject.org 27436 1 4366899190
ftp-stud.hs-esslingen.de 812900 2 4366899157
ftp.cc.uoc.gr 0 1 4366899190
ftp.free.fr 203279 0 1353440974
ftp.ntua.gr 95483 2 4366899157
mirror.de.leaseweb.net 179206 2 4366899157
fedora-mirror01.rbc.ru 96419 1 4366899157
[bernard@coruscant 17]$

Comment 8 Zdeněk Pavlas 2013-01-15 09:31:51 UTC
Yeah, that's it, thanks!  Very interesting..  Seems you didn't have system time set correctly for some time (1), and there's likely also some bug in Python, causing time.time() to return insane values in some edge cases.

Can you confirm (1), please?  All the 4xxxxxxxxx timestamps are invalid, and are causing the traceback, but ATM I have no idea how they got there.  Needs investigating.

To fix your issue, just remove the timedhosts file (it helps Yum to select faster mirrors, but not essential), and the problem should be gone.  Please report if it persists.

Comment 9 Zdeněk Pavlas 2013-01-15 10:21:01 UTC
Added a check for timestamps from the future to HEAD.

Comment 10 Bernard Rodier 2013-01-15 19:28:20 UTC
Removing timedhosts has fixed the issue. 
This remember me that I had some troubles few weeks ago with my network connexions due to invalid timestamp on *.lease files in /var/lib/dhclient. removing files have fixed issue too.

I have do few tests bellow :

[bernard@coruscant tmp]$ cat test_time.c 
/* time example */
#include <stdio.h>
#include <time.h>

int main ()
{
	  time_t seconds;

	    seconds = time (NULL);
	      printf ("%ld hours since January 1, 1970\n", seconds/3600);
	        
	        return 0;
}

[bernard@coruscant tmp]$ gcc test_time.c -o test
[bernard@coruscant tmp]$ ./test
377299 hours since January 1, 1970
[bernard@coruscant tmp]$ date
mar. janv. 15 20:01:15 CET 2013
[bernard@coruscant tmp]$ python
Python 2.7.3 (default, Jul 24 2012, 10:05:38) 
[GCC 4.7.0 20120507 (Red Hat 4.7.0-5)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> time.time()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'time' is not defined
>>>

Comment 11 Zdeněk Pavlas 2013-01-15 22:05:05 UTC
> 377299 hours since January 1, 1970

That's fine, now the time is set correctly.  But timestamp 4366898605 is Year 2107, seems that something has set wrong date previously, and Yum ran few downloads.

> NameError: name 'time' is not defined

Need to "import time" first..

Comment 12 Fedora End Of Life 2013-07-04 07:03:35 UTC
This message is a reminder that Fedora 17 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 17. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '17'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 17's end of life.

Bug Reporter:  Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 17 is end of life. If you 
would still like  to see this bug fixed and are able to reproduce it 
against a later version  of Fedora, you are encouraged  change the 
'version' to a later Fedora version prior to Fedora 17's end of life.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 13 Fedora Update System 2013-10-17 11:02:02 UTC
python-urlgrabber-3.10-0.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/python-urlgrabber-3.10-0.fc19

Comment 14 Fedora Update System 2013-10-18 19:59:17 UTC
Package python-urlgrabber-3.10-0.fc19:
* should fix your issue,
* was pushed to the Fedora 19 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing python-urlgrabber-3.10-0.fc19'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-19353/python-urlgrabber-3.10-0.fc19
then log in and leave karma (feedback).

Comment 15 Fedora Update System 2013-10-22 04:58:26 UTC
python-urlgrabber-3.10-0.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 16 Fedora Update System 2014-05-30 09:28:45 UTC
python-urlgrabber-3.10.1-0.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/python-urlgrabber-3.10.1-0.fc20

Comment 17 Fedora Update System 2014-06-04 07:54:09 UTC
python-urlgrabber-3.10.1-0.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.