Search Postgresql Archives

Re: Code for user-defined type

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 






----- Original Message -----
> From: Tom Lane <tgl@xxxxxxxxxxxxx>
> To: Paul Jones <pbj@xxxxxxxxxx>
> Cc: "pavel.stehule@xxxxxxxxx" <pavel.stehule@xxxxxxxxx>; "pgsql-general@xxxxxxxxxxxxxx" <pgsql-general@xxxxxxxxxxxxxx>
> Sent: Thursday, May 29, 2014 11:32 AM
> Subject: Re: [GENERAL] Code for user-defined type
> 
> Paul Jones <pbj@xxxxxxxxxx> writes:
> 
>>  I used the proper XGetDatum and DatumGetX and was able to get it to work
>>  properly.  However, I since discovered that I probably should not use
>>  "cstring_to_text" because of the palloc's it does.  The 
> problem comes
>>  when doing "\copy table from file".  After about 1000 rows, 
> the backend
>>  dies with SEGV, I think because of too many pallocs being created in
>>  the copy transaction.
> 
> That probably means you're stomping on memory that doesn't belong to 
> you.
> 
> pallocs per se should not be a problem for COPY --- it does a context
> reset per row.  And even if it didn't, you'd not likely be running out
> of memory after a mere thousand rows.  However, a buffer-overrun type
> of coding error would be probabilistic as to when it became obvious
> via a core dump; some of the time you'd be stomping on memory that
> was unused anyway.
> 
>             regards, tom lane

Ok, I am going to recompile with --enable-cassert and give
cstring_to_text/text_to_cstring another try to see if I can track down
what's going wrong.  I'm letting internal routines do all the work
so it's probably something bad I'm passing to them.

PJ

>



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux