この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。
こんにちは、O2 です。
HOT を使える環境か、確認するモジュールを前回公開してみましたが
今回は、migrate 時に、 FILLFACTORを設定してみましょう。
たとえば、以下の様してみると、users テーブルのFILLFACTORを90%に設定することができるよ。
class PostgresHot < ActiveRecord::Migration
require ‘dbcheck’
def self.up
if DBCHECK.enable_hot
ActiveRecord::Base.connection.execute(‘ALTER TABLE users SET (FILLFACTOR=90);’)
end
end
def self.down
if DBCHECK.enable_hot
ActiveRecord::Base.connection.execute(‘ALTER TABLE users SET (FILLFACTOR=100);’)
end
end
end
なぜ、 enable_hotでチェックするかというと、
実は、共有のテストサーバ-には、postgreSQL が、8.3 以下が入っていたりするんです。(^^;;