Message153473
Hmm, this is a little odd. For 2.7 at least, the error message is coming from PyLong_FromDouble in Objects/longobject.c. I can't immediately see how PyLong_FromDouble could be called by the random seeding process.
So it seems more likely that the error is really coming from the int() call in the traceback. But now that implies that the random call is returning NaN, which looks unpossible from the code (random_random in Modules/_randommodule.c).
static PyObject *
random_random(RandomObject *self)
{
unsigned long a=genrand_int32(self)>>5, b=genrand_int32(self)>>6;
return PyFloat_FromDouble((a*67108864.0+b)*(1.0/9007199254740992.0));
}
So despite your comments about healthy hardware, my bet's on corrupted memory. :-) |
|
Date |
User |
Action |
Args |
2012-02-16 10:43:27 | mark.dickinson | set | recipients:
+ mark.dickinson, tim.peters, rhettinger, gregory.p.smith |
2012-02-16 10:43:27 | mark.dickinson | set | messageid: <1329389007.29.0.468236949316.issue14028@psf.upfronthosting.co.za> |
2012-02-16 10:43:26 | mark.dickinson | link | issue14028 messages |
2012-02-16 10:43:26 | mark.dickinson | create | |
|