def structure_dump
database = @config[:database]
if database.nil?
if @config[:url] =~ /\/([^\/]*)$/
database = $1
else
raise "Could not figure out what database this url is for #{@config["url"]}"
end
end
ENV['PGHOST'] = @config[:host] if @config[:host]
ENV['PGPORT'] = @config[:port].to_s if @config[:port]
ENV['PGPASSWORD'] = @config[:password].to_s if @config[:password]
search_path = @config[:schema_search_path]
search_path = "--schema=#{search_path}" if search_path
@connection.connection.close
begin
definition = `pg_dump -i -U "#{@config[:username]}" -s -x -O #{search_path} #{database}`
raise "Error dumping database" if $?.exitstatus == 1
definition.gsub(/SQL_ASCII/, 'UNICODE')
ensure
reconnect!
end
end