# Bug adapter firebird 2.1.2?

**URL:** <https://www.ruby-forum.com/t/bug-adapter-firebird-2-1-2/168238>\
**Category:** Rails\
**Created:** [May 18, 2009, 5:05pm UTC](https://www.ruby-forum.com/t/bug-adapter-firebird-2-1-2/168238 "2009-05-18T17:05:58Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![mariarosaria](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/e19b73/32.png) [@mariarosaria](https://www.ruby-forum.com/u/mariarosaria)\
**Post date:** [May 18, 2009, 5:05pm UTC](https://www.ruby-forum.com/t/bug-adapter-firebird-2-1-2/168238/1 "2009-05-18T17:05:58Z")

</div>

mydb.fdb on windows firebird 2.0.3.12981  
step\_1  
gbak.exe -v -t -user sysdba -password \*\*\*\*\*\* 127.0.0.1/3050:D:\webdb  
\PROD\mydb…fdb D:\webdb\back\mydb.fbk

on server linux firebird 2.1.2.18118  
step\_2  
linux-server:# ftp mydb.fbk  
step\_3  
linux-server:# gbak -c -v … mydb.fbk mydb.fdb

* * *

s.o.linux ubuntu server 9.0.4  
firebird version 2.1.2.18118  
rails 2.3.2  
ruby 1.8.7 patchlevel 72  
rake 0.8.5  
fb\_adapter 0.5.8  
fb 0.5.9  
passenger 2.2.2  
nginx 0.6.36

query from isql  
select sum(val\_emessi) from g1\_items where licence\_id = 6 AND DATA \>=  
‘2009/01/02’ AND DATA \<= ‘2009/01/02’

\*\*\*\* val\_emessi =\> decimal(8,2) \*\*\*  
result =\> 2837.00 …fine

query from rails

condizioni = “data \>= ‘2009/01/02’ and  
data \<= ‘2009/01/02’ and  
licence\_id = 6”  
@emessi = G1Item.sum(‘val\_emessi’, :conditions =\> condizioni)

**@emessi.class =\> BigDecimal**

result =\> 283700.00 … error  
idem for G1Item.find\_by-sql(“select sum(val\_emessi as somma …”)  
result =\> 283700.00 … error  
In windows  
activerecord-firebird-adapter (1.0.0.9250)  
fireruby (0.4.3)  
rails 2.3.2  
firebird version 2.0.3.12981  
works fine.

… idea?  
ciao

---

<div class="post-metadata">

**Author:** ![mariarosaria](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/e19b73/32.png) [@mariarosaria](https://www.ruby-forum.com/u/mariarosaria)\
**Post date:** [May 18, 2009, 5:55pm UTC](https://www.ruby-forum.com/t/bug-adapter-firebird-2-1-2/168238/2 "2009-05-18T17:55:42Z")

</div>

Hi Mary,

I’m Italian but I write the response in eglish (sorry for my poor  
english)…

Some time ago I had a problem like your under FireBird 1.5.x and  
FireRuby 0.4.1 just after a db restore.

The issue was with casting function on the rails firebird adapter the  
error was something like “cannot cast CAST(DECIMAL(0,0)”…

I remember that I was able to solve the problem on firebird\_adapter.rb  
executing something like sql\_query.gsub!(“DECIMAL(0,0)”,  
“DECIMAL(0,18)”) before the returning row.

Hope it helps…

---

<div class="post-metadata">

**Author:** ![mariarosaria](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/e19b73/32.png) [@mariarosaria](https://www.ruby-forum.com/u/mariarosaria)\
**Post date:** [May 18, 2009, 6:31pm UTC](https://www.ruby-forum.com/t/bug-adapter-firebird-2-1-2/168238/3 "2009-05-18T18:31:27Z")

</div>

Gianluca T. wrote:

> Hi Mary,
> 
> I’m Italian but I write the response in eglish (sorry for my poor  
> english)…
> 
> Some time ago I had a problem like your under FireBird 1.5.x and  
> FireRuby 0.4.1 just after a db restore.
> 
> The issue was with casting function on the rails firebird adapter the  
> error was something like “cannot cast CAST(DECIMAL(0,0)”…
> 
> I remember that I was able to solve the problem on firebird\_adapter.rb  
> executing something like sql\_query.gsub!(“DECIMAL(0,0)”,  
> “DECIMAL(0,18)”) before the returning row.
> 
> Hope it helps…

Il mio problema Ã¨ che non viene generato nessun errore.  
Semplicemente il valore Ã¨ aumentato di un fattore 100.  
Il problema sembra dei metodi di classe tranne find.  
Ciao

---

<div class="post-metadata">

**Author:** ![mariarosaria](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/e19b73/32.png) [@mariarosaria](https://www.ruby-forum.com/u/mariarosaria)\
**Post date:** [May 19, 2009, 11:42am UTC](https://www.ruby-forum.com/t/bug-adapter-firebird-2-1-2/168238/4 "2009-05-19T11:42:59Z")

</div>

Ok ho visto…

mi sembra che stai comprando l’errore con versioni diverse dei vari  
camponenti:

windows (ok) =\> FireBird 2.0 + activerecord-firebird-adapter + FireRuby  
linux (errore) =\> FireBird 2.1 + fb\_adapter + fb

Magari sto dicendo una cosa ovvia o magari banale ma secondo me dovresti  
provare a utilizzare su linux gli stessi componenti che stai utilizzando  
su windows (activerecord-firebird-adapter + FireRuby)

---

<div class="post-metadata">

**Author:** ![mariarosaria](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/e19b73/32.png) [@mariarosaria](https://www.ruby-forum.com/u/mariarosaria)\
**Post date:** [May 19, 2009, 5:49pm UTC](https://www.ruby-forum.com/t/bug-adapter-firebird-2-1-2/168238/5 "2009-05-19T17:49:40Z")

</div>

Gianluca T. wrote:

> Ok ho visto…
> 
> mi sembra che stai comprando l’errore con versioni diverse dei vari  
> camponenti:
> 
> windows (ok) =\> FireBird 2.0 + activerecord-firebird-adapter + FireRuby  
> linux (errore) =\> FireBird 2.1 + fb\_adapter + fb
> 
> Magari sto dicendo una cosa ovvia o magari banale ma secondo me dovresti  
> provare a utilizzare su linux gli stessi componenti che stai utilizzando  
> su windows (activerecord-firebird-adapter + FireRuby)

In windows non ci sono ancora per FireBird 2.1  
Esistono solo fb\_adapter + fb che sono per linux.  
Il motivo di spostare a linux Ã¨ proprio il ritardo di aggiornamento  
delle  
librerie.  
Fanno prima le cose per linux.  
Ciao e grazie per l’interessamento

---

<div class="post-metadata">

**Author:** ![mariarosaria](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/e19b73/32.png) [@mariarosaria](https://www.ruby-forum.com/u/mariarosaria)\
**Post date:** [May 25, 2009, 8:41am UTC](https://www.ruby-forum.com/t/bug-adapter-firebird-2-1-2/168238/6 "2009-05-25T08:41:28Z")

</div>

Confermato:  
Data: 23/05/2009 11:33  
Mittente: Brent R.

I can confirm there is a bug interpreting the results of aggregate  
operators such as SUM and AVG. I suggest performing these operations  
in code, rather than in the database, until a fix can be made.

Brent  
[http://rubyforge.org/tracker/index.php?func=detail&aid=25938&group\_id=1774&atid=6946](http://rubyforge.org/tracker/index.php?func=detail&aid=25938&group_id=1774&atid=6946)
