my-ship-it commented on issue #92: URL: https://github.com/apache/cloudberry-backup/issues/92#issuecomment-4309904941
Hi @adnanhamdussalam, great to see you back — thanks for another carefully written report (and for linking the Broadcom KB, that was really helpful). You're right, this looks like the same class of bug that upstream `gpbackup` fixed in 1.30.6. I traced the code in `apache/cloudberry-backup` 2.1.0-incubating and the pre-fix logic is still present here, so the issue reproduces as you described. A quick summary of the root cause for anyone else hitting this: - In a larger-to-smaller resize restore, `restore/data.go` expands the oid list into `(oid, batch)` pairs ordered oid-first: `[T1B0, T1B1, T2B0, T2B1, …]`. - `CreateInitialSegmentPipes` and `gpbackup_helper`'s `preloadCreatedPipesForRestore` only prepare `min(NumConns, len(oidList))` pipes up front, where `NumConns == --jobs`. - On the coordinator side, tasks are dispatched **per table**, and `--jobs` workers pick them up concurrently. When `batches ≥ 2`, only the first `jobs/batches` tables have their `B0` pipe preloaded, so the other workers race ahead and try to `cat` a pipe the helper hasn't created yet — hence the `No such file or directory` error. - `--jobs 1` serializes everything and the helper keeps up, which matches what you're seeing. **Workaround:** stick with `--jobs 1` for resize-cluster restores until the fix is in. **Fix plan:** port the upstream 1.30.6 behavior — either bump the preload/copy-queue size to `NumConns * batches`, or switch worker dispatch to iterate by `(oid, batch)` so coordinator and helper consume the list in the same order. I'll put together a PR and link it back to this issue. Thanks again for the clear repro, and for continuing to help us shake out these rough edges! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
