Decimal columns with zero scale

Hi,

I'm using Rails v2.3.2 with a PostgreSQL database and I needed a column to hold very large integers. Defining a migration such as:

    create_table :large_integers do |t|       t.decimal :large, :scale => 0, :precision => 80

      t.timestamps     end

Gave me a numeric(40, 0) column which was exactly what I wanted. However, after running the schema dumper, db/schema.rb contained the following:

  create_table "large_integers", :force => true do |t|     t.integer "large", :limit => 80, :precision => 80, :scale => 0     t.datetime "created_at"     t.datetime "updated_at"   end

Unfortunately, this creates a plain integer column, which can not hold numbers this large.

I've created a patch to fix this problem in the schema dumper, and it's attached to Lighthouse ticket #2741:

https://rails.lighthouseapp.com/projects/8994-ruby-on-rails/tickets/2741-decimal-column-with-zero-scale-dumped-as-integer-column

Could someone please review this patch?

Thanks, Giles