On 04/13/2012 07:21 AM, Shigeru HANADA wrote: > (2012/04/13 16:59), Etsuro Fujita wrote: >> I updated the patch added to CF 2012-Next [1]. Attached is the updated >> version of the patch. > I applied the patch and ran regression tests of file_fdw, and I got > SIGSEGV X-( > > The failure occurs in fileGetOptions, and it is caused by > list_delete_cell used in foreach loop; ListCell points delete target has > been free-ed in list_delete_cell, but foreach accesses it to get next > element. > > Some of backend functions which use list_delete_cell in loop use "for" > loop instead of foreach, and other functions exit the loop after calling > list_delete_cell. Since we can't stop searching non-COPY options until > meeting the end of the options list, we would need to choose former > ("for" loop), or create another list which contains only valid COPY > options and return it via other_options parameter. >
Yes, the code in fileGetOptions() appears to be bogus. Also, "validate" is a terrible name for the option (and in the code) IMNSHO. It's far too generic. "validate_not_null" or some such would surely be better. cheers andrew -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers