On Fri, Jun 5, 2015 at 10:51 AM, Amit Kapila <amit.kapil...@gmail.com>
wrote:

> On Fri, Jun 5, 2015 at 9:57 AM, Andrew Dunstan <and...@dunslane.net>
> wrote:
>
>>
>> On 06/04/2015 11:35 PM, Amit Kapila wrote:
>>
>>>
>>> Theoretically, I don't see much problem by changing the checks
>>> way you have done in patch, but it becomes different than what
>>> we have in destroy_tablespace_directories() and it is slightly
>>> changing the way check was originally done in
>>> create_tablespace_directories(), basically original check will try
>>> unlink if lstat returns non-zero return code. If you want to proceed
>>> with the changed checks as in v3, then may be we can modify
>>> comments on top of function remove_tablespace_symlink() which
>>> indicates that it works like destroy_tablespace_directories().
>>>
>>>
>>
>> The difference is that here we're getting the list from a base backup and
>> it seems to me the risk of having a file we don't really want to unlink is
>> significantly greater.
>>
>
> Okay, I think I can understand why you want to be cautious for
> having a different check for this path, but in that case there is a
> chance that recovery might fail when it will try to create a symlink
> for that file.  Shouldn't we then try to call this new function only
> when we are trying to restore from tablespace_map file and also
> is there a need of ifdef S_ISLINK in remove_tablespace_link?
>

Shall I send an updated patch on these lines or do you want to
proceed with v3 version?


With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com

Reply via email to