Jruby precision issue with reading float values in mysql db

P

Pradeep Gatram

Hi,

I was trying to upgrade from 1.1.6 to 1.2.0 and noticed a strange
issue with floats. In Jruby 1.2.0, a float like 2.52342 is read as
2.52342009544373 from the DB.

A few steps to reproduce this.
1. Migration: t.float :reading
2. Fixture: reading: 2.52342
3. Run script/console

jruby script/console
Loading development environment (Rails 2.2.2)=> 2.52342009544373

Any idea if this has been logged as a bug or if there is a workaround?
 
C

Charles Oliver Nutter

It seems the problem is that we're showing the actual machine precision
here. Floats are rarely 100% accurate, and this is likely a case where
it's losing some accuracy going into or coming out of the database. It's
possible there's a bug somewhere, but expecting floats to always be an
exact amount generally leads to bugs.

At any rate, can you file an issue for this in JRuby's bug tracker, and
if it's valid we'll try to fix it :)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
474,172
Messages
2,570,934
Members
47,478
Latest member
ReginaldVi

Latest Threads

Top