Esa construcción 'o' puede estar causando problemas, yo haría algo como:
$result = mysql_query($sql);
if (!$result) {
$this->debug->dbErrors($sql);
}
De esta manera, está realizando una verificación explícita para ver si $resultado es un booleano falso (la consulta no es válida) o un recurso (la consulta es válida). El punto es llamar solo a $this->debug->dbErrors()
si realmente hay un problema, de lo contrario, la forma en que está escrito su código, todas las consultas se enviarán por correo electrónico.