Lo que puedes haces es checar si no esta ocurriendo algun error con
pg_last_error() Código PHP:
<?
$query = "SELECT cedula, fecha, SUM(horas) AS horastotales, contrato FROM maestro WHERE contrato = '$contrato' AND Fecha BETWEEN '$fecha_del' AND '$fecha_al' GROUP BY cedula, fecha, contrato";
$result=pg_Exec($conn,$query);
echo pg_last_error($conn );
?>