On Thu, Apr 05, 2007 at 08:03:20AM -0400, Garrett, Philip (MAN-Corporate) wrote:
> Hi John,
>
> [EMAIL PROTECTED] wrote:
> > I'm getting the error below when trying to install DBI 1.54. Linux is:
> > Red Hat Enterprise Linux ES release 3 (Taroon Update 5) or Red Hat
> > Enterprise Linux ES release 2.1 (Panama) ie both error. I don't get
> > the errors on my slackware box.
> >
> > t/40profile...............ok 12/51
> > # Structures begin differing at:
> > # $got->[5] = '1175772925.91570711'
> > # $expected->[5] = '1175772925.915707'
>
> It looks like a fix that was intended to avoid this error didn't quite
> work. If all the other tests passed, you can safely force the install.
Agreed.
> >From 40profile.t:
> 93 # Try to avoid rounding problem on double precision systems
> 94 # $got->[5] = '1150962858.01596498'
> 95 # $expected->[5] = '1150962858.015965'
>
> > use64bitint=undef use64bitall=undef uselongdouble=define
> > longdblsize=12 ivtype='long', ivsize=4, nvtype='long double',
> > nvsize=12, Off_t='off_t', lseeksize=8
>
> Maybe the test could be adjusted to test for accuracy within a margin of
> error based on $Config{nvsize}?
It's a bug in the profile code within DBI. It was using 'double' to
hold the time instead of 'NV', which is a 'long double' on some systems.
The test is just picking up the slight loss of accuracy. I didn't
notice the underlying problem till after 1.54 was release. It's fixed
for 1.55.
Tim.