Odd LXD-to-LXD migration issue

I am attempting to copy an LXD container from an older system (20.04 running LXD 4.0.9) to a newer system (22.04 running LXD 5.0.3) using lxc copy. However, with a single container, I am constantly without fail getting Error reading migration control source: websocket: close 1000 (normal) on ANY attempt to copy from one machine to the other.

On the Source system, the container in question is running in a dir-backed storage environment. On the Destination system, the destination storage is a 200GiB BTRFS volume. The container itself according to du on the directory backed storage space on disk on Source is 34G. Destination’s space on the target BTRFS volume is over 100GiB of free space, so I don’t think the issue is “out of space”. Source and Destination systems both are well short of their free space.

There is literally nothing in the Debug logs either that help figure out what broke down, so I’m struggling to figure out what’s going on with why it’s failing.

The last thing I’m going to try is move the dirbacked storage to a BTRFS volume on the Source then see if I can migrate it that way. But I was wondering if there’s something broken here that I’m not aware of.

Interesting observation:

If I move the dir-backed container to a BTRFS volume first then I did not have this failure case. It looks like moving dir-backed containers has some oddness at play that is atypical and unusual. Maybe something that should be a bug?