Limitaciones y consideraciones del reenvío de escritura local en Aurora PostgreSQL
Las limitaciones siguientes se aplican actualmente al reenvío de escritura local en Aurora PostgreSQL:
-
RDS Proxy no admite el reenvío de escritura local.
-
Algunas instrucciones no están permitidas o pueden producir resultados obsoletos cuando se utilizan en Aurora PostgreSQL con reenvío de escritura. Además, no se admiten funciones ni procedimientos definidos por el usuario. Por ello, la configuración
EnableLocalWriteForwarding
está desactivada de forma predeterminada para los clústeres de base de datos. Antes de activarla, asegúrese de que el código de la aplicación no se vea afectado por ninguna de estas restricciones. -
Los siguientes tipos de instrucciones SQL no son compatibles con el reenvío de escritura:
nota
Puede utilizar estas declaraciones de forma implícita en su aplicación o inferirlas mediante el protocolo PostgreSQL. Por ejemplo, la gestión de excepciones de PL/SQL puede provocar el uso de SAVEPOINT, que no es una declaración admitida.
-
ANALYZE
-
CLUSTER
-
COPY
-
Cursores: los cursores no son compatibles, así que debe asegurarse de cerrarlos antes de utilizar el reenvío de escritura local.
-
Instrucciones en lenguaje de definición de datos (DDL)
-
GRANT
|REVOKE
|REASSIGN OWNED
|SECURITY LABEL
-
LISTEN / NOTIFY
-
LOCK
-
SAVEPOINT
-
SELECT INTO
-
SET CONSTRAINTS
-
Actualizaciones de secuencias:
nextval()
ysetval()
-
TRUNCATE
-
Comandos de confirmación en dos fases:
PREPARE TRANSACTION
,COMMIT PREPARED
yROLLBACK PREPARED
-
Funciones y procedimientos definidos por el usuario.
-
VACUUM
-
Puede considerar el uso de las siguientes instrucciones SQL con reenvío de escritura:
-
Una instrucción DML puede constar de varias partes, como una instrucción
INSERT ... SELECT
o una instrucciónDELETE ... WHERE
. En este caso, la instrucción completa se reenvía a la instancia de base de datos del escritor y se ejecuta allí. -
Instrucciones de lenguaje de manipulación de datos (DML) como
INSERT
,DELETE
yUPDATE
. -
Instrucciones
EXPLAIN
con las instrucciones de esta lista. -
Instrucciones
PREPARE
yEXECUTE
. -
Instrucciones
SELECT FOR { UPDATE | NO KEY UPDATE | SHARE | KEY SHARE }