¿Estás seguro de que Postgres está escuchando en un socket? ¿estás seguro de que el nombre de usuario y la contraseña son correctos?
Me inclinaría por intentar 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)