você tem certeza que o postgres está escutando em um soquete? tem certeza de que o nome de usuário e a senha estão corretos?
Eu estaria inclinado a tentar algo como
require 'pg'
puts PG::Connection.ping(:dbname => 'oData',:user => 'am',:password => '')
puts "trying with tcp"
puts PG::Connection.ping(:dbname => 'oData',:user => 'am',:password => '', :port => 5432)