Rafael Martinez wrote: > Edwin Quijada wrote: > >> ERROR: invalid memory alloc request size 4294967293 >> >> > [......] >> text *new_t = (text *) palloc(LENMAX); >> > [......] >> memcpy(VARDATA(new_t),buf,strlen(buf)); > > Hola > > Asignas/reservas el espacio a usar por new_t con palloc(40) y despues > intentas copiar los datos en buf[BUFSIZ] a este espacio. > > ¿Que valor tiene BUFSIZ?, probablemente mayor que 40, con lo que no > tienes suficiente memoria asignada/reservada para copiar buf en new_t. >
Pensandolo mejor, creo que tambien deberias de hacer esto: SET_VARSIZE(new_t, strlen(buf) + VARHDRSZ); antes de ejecutar el memcpy(). Por supuesto el espacio asignado a new_t no puede ser menor que el usado por buf. -- Rafael Martinez, <r.m.guerr...@usit.uio.no> Center for Information Technology Services University of Oslo, Norway PGP Public Key: http://folk.uio.no/rafael/ -- TIP 6: ¿Has buscado en los archivos de nuestra lista de correo? http://archives.postgresql.org/pgsql-es-ayuda