La aplicación que estamos creando podría ejecutar consultas de inserción bastante grandes. ¿Hay algún límite en que mi consulta de postgres pueda tener solo un cierto número de caracteres?
postgresql
Kannan Ramamoorthy
fuente
fuente

Respuestas:
Para la versión actual de PostgreSQL (hasta 9.5), un backend recibe las consultas en un
Stringinfobúfer, que se limita aMaxAllocSize, definido como:(ver http://doxygen.postgresql.org/memutils_8h.html )
Por lo tanto, una consulta está limitada a 1 gigabyte (2 ^ 30) de tamaño, menos 1 byte para un byte nulo de terminación.
Si un cliente intenta enviar una consulta más grande, volverá a aparecer un error similar al siguiente:
donde
Nes el tamaño de la consultaTenga en cuenta que una consulta a continuación
1GBpuede requerir que se analice, planifique o ejecute grandes cantidades de memoria, además de ese1GBbúfer.Si necesita insertar una gran serie de literales en una consulta, considere la alternativa de crear una tabla temporal,
COPYfilas en ella y que la consulta principal haga referencia a esa tabla temporal.fuente