

 Amazon Redshift dejará de admitir la creación de nuevas UDF de Python a partir del parche 198. Las UDF de Python existentes seguirán funcionando hasta el 30 de junio de 2026. Para obtener más información, consulte la [publicación del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# CHANGE\$1SESSION\$1PRIORITY
<a name="r_CHANGE_SESSION_PRIORITY"></a>

CHANGE\$1SESSION\$1PRIORITY permite a los superusuarios cambiar de inmediato la prioridad de cualquier sesión en el sistema. Solo se puede ejecutar una sesión, usuario o consulta con la prioridad `CRITICAL`.

## Sintaxis
<a name="r_CHANGE_SESSION_PRIORITY-synopsis"></a>

```
CHANGE_SESSION_PRIORITY(pid, priority)
```

## Argumentos
<a name="r_CHANGE_SESSION_PRIORITY-argument"></a>

 *pid*   
El identificador de proceso de la sesión cuya prioridad se cambia. El valor `-1` hace referencia a la sesión actual. Requiere un valor `INTEGER`.

 *priority*   
La nueva prioridad que asignar a la sesión. Este argumento debe ser una cadena con el valor `CRITICAL`, `HIGHEST`, `HIGH`, `NORMAL`, `LOW` o `LOWEST`. 

## Tipo de retorno
<a name="r_CHANGE_SESSION_PRIORITY-return-type"></a>

Ninguno

## Ejemplos
<a name="r_CHANGE_SESSION_PRIORITY-example"></a>

Para devolver el identificador de proceso del proceso del servidor que administra la sesión actual, use el siguiente ejemplo.

```
SELECT pg_backend_pid();
               
+----------------+
| pg_backend_pid |
+----------------+
|          30311 |
+----------------+
```

En este ejemplo, la prioridad se cambia a `LOWEST` para la sesión actual.

```
SELECT CHANGE_SESSION_PRIORITY(30311, 'Lowest');
               
+---------------------------------------------------------------------------------------+
|                                change_session_priority                                |
+---------------------------------------------------------------------------------------+
| Succeeded to change session priority. Changed session (pid:30311) priority to lowest. |
+---------------------------------------------------------------------------------------+
```

En este ejemplo, la prioridad se cambia a `HIGH` para la sesión actual.

```
SELECT CHANGE_SESSION_PRIORITY(-1, 'High');

+-------------------------------------------------------------------------------------------------+
|                                     change_session_priority                                     |
+-------------------------------------------------------------------------------------------------+
| Succeeded to change session priority. Changed session (pid:30311) priority from lowest to high. |
+-------------------------------------------------------------------------------------------------+
```

Para crear un procedimiento almacenado que cambie la prioridad de una sesión, use el siguiente ejemplo. El permiso para ejecutar este procedimiento almacenado se concede al usuario de la base de datos `test_user`.

```
CREATE OR REPLACE PROCEDURE sp_priority_low(pid IN int, result OUT varchar)
AS $$
BEGIN
  SELECT CHANGE_SESSION_PRIORITY(pid, 'low') into result;
END;
$$ LANGUAGE plpgsql
SECURITY DEFINER;
GRANT EXECUTE ON PROCEDURE sp_priority_low(int) TO test_user;
```

A continuación, el usuario de la base de datos denominado `test_user` llama al procedimiento.

```
CALL sp_priority_low(pg_backend_pid()); 

+------------------------------------------------------+
|                        result                        |
+------------------------------------------------------+
| Success. Change session (pid:13155) priority to low. |
+------------------------------------------------------+
```