Hi,

> I find heapam_relation_copy_data() and index_copy_data() have the following 
> code:
>
>         dstrel = smgropen(*newrlocator, rel->rd_backend);
>
>         ...
>
>         RelationCreateStorage(*newrlocator, rel->rd_rel->relpersistence, 
> true);
>
> The smgropen() is also called by RelationCreateStorage(), why should we call
> smgropen() explicitly here?
>
> I try to remove the smgropen(), and all tests passed.

That's a very good question. Note that the second argument of
smgropen() used to create dstrel changes after applying your patch.
I'm not 100% sure whether this is significant or not.

I added your patch to the nearest open commitfest so that we will not lose it:

https://commitfest.postgresql.org/47/4794/


-- 
Best regards,
Aleksander Alekseev


Reply via email to