-
-
Notifications
You must be signed in to change notification settings - Fork 180
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error: invalid cross-device link #30
Comments
Ah interesting, can you test if Go's |
Verified this issue - Rename doesn't work across partitions.
Error: rename /tmp/Hello1.txt /tmp/hello2.txt: no such file or directory
go version go1.18.1 linux/amd64
…On Sat, May 14, 2022 at 3:03 PM Matt Mueller ***@***.***> wrote:
Ah interesting, can you test if Go's os.Rename() works across your
partition? I'm not sure what I can do about this if it doesn't.
—
Reply to this email directly, view it on GitHub
<#30 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AASE2SCHWWEQRXYOBGMJYXLVJ5XNZANCNFSM5V5EHKGQ>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Usually /tmp will be different partition, and so it is common problem. Workaround: Create a subdir in /tmp itself, and in that run the bud command to create the app. After that, move the directory to desired location. (To solve this problem in bud, there are Copy directory packages in golang. They can be used, and the /tmp dir deleted. ) |
Oh no. Bud uses rename even during many other steps, say when we do bud run... |
This does indeed seem like a pretty common problem that we'll want to fix.
Not sure I'm following. Wouldn't /tmp/subdir also be in a different partition? Do you mind elaborating? |
When /tmp is in separate partition, all its subdirectories are obviously in
the same partition. So rename will work properly.
(But /tmp is may be cleaned daily by cron process..)
…On Sun, 15 May, 2022, 00:22 Matt Mueller, ***@***.***> wrote:
Usually /tmp will be different partition, and so it is common problem.
Workaround: Create a subdir in /tmp itself, and in that run the bud
command to create the app. After that, move the directory to desired
location.
Not sure I'm following. Wouldn't /tmp/subdir also be in a different
partition? Do you mind elaborating?
—
Reply to this email directly, view it on GitHub
<#30 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AASE2SAFYQQHCWCS7YFGMILVJ7Y7BANCNFSM5V5EHKGQ>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
But wouldn't your app still be on a separate partition? To not end up in weird states, Bud builds into /tmp and then renames the directory into /your_app. I'm tempted to move the cache and tmp directories into your project's bud build directory Most people will |
@codevin Would you mind pulling down the branch in the following PR and testing if this fixes your problem? #50 You can get Bud running locally by following the Contributor Guide. |
$ git status
On branch move-build-cache
Your branch is up to date with 'origin/move-build-cache'.
nothing to commit, working tree clean
$ go build
$ ./livebud/bud/bud create ff-app
Module name? (e.g. github.com/me/app) github.com/codevin/featureplus
| rename /tmp/bud-create-2666878416 ff-app: invalid cross-device link
…On Sun, May 15, 2022 at 10:49 PM Matt Mueller ***@***.***> wrote:
@codevin <https://github.com/codevin> Would you mind pulling down the
branch in the following PR and testing if this fixes your problem? #50
<#50>
—
Reply to this email directly, view it on GitHub
<#30 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AASE2SASJK37HNDEF7KZEMTVKEW3VANCNFSM5V5EHKGQ>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Oh right, sorry it's getting late 😅 There's still |
I'm having the same problem with b906630: | rename /tmp/bud-create-1544231090 s3bud: invalid cross-device link For me, $ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 476.9G 0 disk
├─nvme0n1p1 259:1 0 512M 0 part
├─nvme0n1p2 259:2 0 24G 0 part [SWAP]
└─nvme0n1p3 259:3 0 452.4G 0 part / |
Okay, can you try changing it from an err.Error() equals to a
strings.Contains? The error might include the dir name
I wasn't able to find the error source in Go's codebase.
…On Mon, May 16, 2022 at 1:42 AM Lena Fuhrimann ***@***.***> wrote:
I'm having the same problem with b906630
<b906630>
:
| rename /tmp/bud-create-1544231090 s3bud: invalid cross-device link
For me, /tmp is on the same partition as the directory I'm operating in:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 476.9G 0 disk
├─nvme0n1p1 259:1 0 512M 0 part
├─nvme0n1p2 259:2 0 24G 0 part [SWAP]
└─nvme0n1p3 259:3 0 452.4G 0 part /
—
Reply to this email directly, view it on GitHub
<#30 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AABJSO73DL5HO5SYE3S3R3TVKFAPZANCNFSM5V5EHKGQ>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Yes, |
When I did 'bud create ff-bud', I got this error:
| rename /tmp/bud-create-3425471412 ff-bud: invalid cross-device link
Possibly because /tmp is different partition than the current directory. Rename will work only in same partition?
The text was updated successfully, but these errors were encountered: