On 10/19/23 12:05, Robert Haas wrote:
On Wed, Oct 4, 2023 at 4:08 PM Robert Haas <robertmh...@gmail.com> wrote:
Clearly there's a good amount of stuff to sort out here, but we've
still got quite a bit of time left before feature freeze so I'd like
to have a go at it. Please let me know your thoughts, if you have any.

Apparently, nobody has any thoughts, but here's an updated patch set
anyway. The main change, other than rebasing, is that I did a bunch
more documentation work on the main patch (0005). I'm much happier
with it now, although I expect it may need more adjustments here and
there as outstanding design questions get settled.

After some thought, I think that it should be fine to commit 0001 and
0002 as independent refactoring patches, and I plan to go ahead and do
that pretty soon unless somebody objects.

0001 looks pretty good to me. The only thing I find a little troublesome is the repeated construction of file names with/without segment numbers in ResetUnloggedRelationsInDbspaceDir(), .e.g.:

+                       if (segno == 0)
+                               snprintf(dstpath, sizeof(dstpath), "%s/%u",
+                                                dbspacedirname, relNumber);
+                       else
+                               snprintf(dstpath, sizeof(dstpath), "%s/%u.%u",
+                                                dbspacedirname, relNumber, 
segno);


If this happened three times I'd definitely want a helper function, but even with two I think it would be a bit nicer.

0002 is definitely a good idea. FWIW pgBackRest does this conversion but also errors if it does not succeed. We have never seen a report of this error happening in the wild, so I think it must be pretty rare if it does happen.

Regards,
-David


Reply via email to