Manejo de errores en peticiones ajax con jquery y codeigniter.

Para lanzar el error:

$this->output->set_status_header(500,'Texto del error que se mostrará al usuario');
die();

Para capturar el error:

$.post(""direccion http", { campo: "estado", valor: $nuevo_estado, cod: $codigo_pedido}) //post data
            .done(function(data) {
                 alert("insertado correctamente");
            })
            .fail(function(xhr, textStatus, errorThrown){
                    alert(errorThrown);
});