rollback() public méthode

Transaction rollback function
public rollback ( )
/**
 * @description Modifica una comentario
 * @param $comentario
 */
function updateComentario($comentario)
{
    $db = new MysqliDb();
    $db->startTransaction();
    $comentario_decoded = checkComentario(json_decode($comentario));
    $db->where('comentario_id', $comentario_decoded->comentario_id);
    $data = array('post_id' => $comentario_decoded->post_id, 'titulo' => $comentario_decoded->titulo, 'detalles' => $comentario_decoded->detalles, 'parent_id' => $comentario_decoded->parent_id, 'creador_id' => $comentario_decoded->creador_id, 'votos_up' => $comentario_decoded->votos_up, 'votos_down' => $comentario_decoded->votos_down, 'fecha' => $comentario_decoded->fecha);
    $result = $db->update('posts_comentarios', $data);
    if ($result) {
        $db->commit();
        echo json_encode($result);
    } else {
        $db->rollback();
        echo json_encode(-1);
    }
}
/**
 * @description Elimina un detalle de carrito
 * @param $carrito_detalle_id
 */
function removeCarritoDetalle($carrito_detalle_id)
{
    $db = new MysqliDb();
    $db->startTransaction();
    try {
        $carrito_detalle_id_decoded = json_decode($carrito_detalle_id);
        $db->where("carrito_detalle_id", $carrito_detalle_id_decoded, 'IN');
        $results = $db->delete('carrito_detalles');
        if ($results) {
            $db->commit();
            echo json_encode(1);
        } else {
            $db->rollback();
            echo json_encode(-1);
        }
    } catch (Exception $e) {
        $db->rollback();
        echo json_encode(-1);
    }
}
/**
 * @description Modifica un stock
 * @param $stock
 */
function updateStock($stock)
{
    $db = new MysqliDb();
    $db->startTransaction();
    $item_decoded = checkStock(json_decode($stock));
    $db->where('stock_id', $item_decoded->stock_id);
    $data = array('cant_actual' => $item_decoded->cant_actual);
    $result = $db->update('stock', $data);
    if ($result) {
        $db->commit();
        echo json_encode($result);
    } else {
        $db->rollback();
        echo json_encode(-1);
    }
}
/**
 * @description Modifica una sucursal
 * @param $sucursal
 */
function updateSucursal($sucursal)
{
    $db = new MysqliDb();
    $db->startTransaction();
    $sucursal_decoded = checkSucursal(json_decode($sucursal));
    $db->where('sucursal_id', $sucursal_decoded->sucursal_id);
    $data = array('nombre' => $sucursal_decoded->nombre, 'direccion' => $sucursal_decoded->direccion, 'telefono' => $sucursal_decoded->telefono);
    $result = $db->update('sucursales', $data);
    if ($result) {
        $db->commit();
        echo json_encode($result);
    } else {
        $db->rollback();
        echo json_encode(-1);
    }
}
/**
 * @description Modifica un donacion
 * @param $donacion
 */
function updateDonacion($donacion)
{
    $db = new MysqliDb();
    $db->startTransaction();
    $donacion_decoded = checkDonacion(json_decode($donacion));
    $db->where('donacion_id', $donacion_decoded->donacion_id);
    $data = array('proyecto_id' => $donacion_decoded->proyecto_id, 'donador_id' => $donacion_decoded->donador_id, 'fecha' => $donacion_decoded->fecha, 'valor' => $donacion_decoded->valor, 'status' => $donacion_decoded->status, 'comprobante' => $donacion_decoded->comprobante);
    $result = $db->update('donaciones', $data);
    if ($result) {
        $db->commit();
        echo json_encode($result);
    } else {
        $db->rollback();
        echo json_encode(-1);
    }
}
function create($user)
{
    $db = new MysqliDb();
    $db->startTransaction();
    $user_decoded = checkUsuario(json_decode($user));
    $options = ['cost' => 12];
    $password = password_hash($user_decoded->password, PASSWORD_BCRYPT, $options);
    $data = array('nombre' => $user_decoded->nombre, 'apellido' => $user_decoded->apellido, 'mail' => $user_decoded->mail, 'nacionalidad_id' => $user_decoded->nacionalidad_id, 'tipo_doc' => $user_decoded->tipo_doc, 'nro_doc' => $user_decoded->nro_doc, 'comentarios' => $user_decoded->comentarios, 'marcado' => $user_decoded->marcado, 'telefono' => $user_decoded->telefono, 'fecha_nacimiento' => $user_decoded->fecha_nacimiento, 'profesion_id' => $user_decoded->profesion_id, 'saldo' => $user_decoded->saldo, 'password' => $password, 'rol_id' => $user_decoded->rol_id, 'news_letter' => $user_decoded->news_letter, 'cbu' => $user_decoded->cbu, 'social_login' => $user_decoded->social_login);
    $result = $db->insert('usuarios', $data);
    if ($result > -1) {
        $data = array('usuario_id' => $result, 'calle' => $user_decoded->calle, 'nro' => $user_decoded->nro, 'piso' => $user_decoded->piso, 'puerta' => $user_decoded->puerta, 'ciudad_id' => $user_decoded->ciudad_id);
        $dir = $db->insert('direcciones', $data);
        if ($dir > -1) {
            $db->commit();
            echo json_encode($result);
        } else {
            $db->rollback();
            echo json_encode(-1);
        }
    } else {
        $db->rollback();
        echo json_encode(-1);
    }
}