keybase / client

Keybase Go Library, Client, Service, OS X, iOS, Android, Electron
BSD 3-Clause "New" or "Revised" License
8.83k stars 1.22k forks source link

Unable to upload files - kbfs not running? #9093

Open c00w opened 6 years ago

c00w commented 6 years ago

my log id: dae8802f654a347445e4621c

colin@colin-chat-dev ~ % curl -O https://prerelease.keybase.io/keybase_amd64.deb % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 75.0M 100 75.0M 0 0 27.4M 0 0:00:02 0:00:02 --:--:-- 27.4M colin@colin-chat-dev ~ % sudo dpkg -i keybase_amd64.deb [sudo] password for colin: (Reading database ... 174216 files and directories currently installed.) Preparing to unpack keybase_amd64.deb ... Unpacking keybase (1.0.34-20171012160058.c282fb227) over (1.0.34-20171012160058.c282fb227) ... Setting up keybase (1.0.34-20171012160058.c282fb227) ... Processing triggers for mime-support (3.59ubuntu1) ... Processing triggers for hicolor-icon-theme (0.15-0ubuntu1) ... colin@colin-chat-dev ~ % run_keybase
Unmounting /keybase... Shutting down kbfsfuse... Shutting down keybase service... Launching keybase service... Mounting /keybase... Launching Keybase GUI... Success! ▄▄▄▄█▀
╭───────────────────────╮ ▄▄ ▄▄▄█▄▄▀
│ │ ███▄▄▄▄▄▄▄▄▄▄███▄██
│ Encrypt everything! │ ▄▄▄████▄▄▄███████████
│ ├──── ▄▄▄▄▄████▄█████████████
╰───────────────────────╯ ███▄█▄█████████████████▄▄
▀▄███████▄▀ ███████████▄▄
▄▄▄▄███ ███████████▄▄
▄████████ ██████████████ ▄███▄█████▄▄ ▀▄████████████ ███████▄▄██▄█▄▄ █████████████ ▄▄█████████████▄▄ ████████████ ▄██▄▄████▄▄▄█▄▄█████ ████████████ ███▄▄▄▄▄███████▄▄█████████▄▀ ▄█████▄▄█████████████▄█████ █▄██████████▄▄▄▄▄▄▄███████
▄▄▄▄▄██▄▄█████▄████████████
▀▀▀▀▀▀▀▀▄▄▄▄██▄▀ ▀▀▄▄▄▄▄▄▀▀▀
▀▀▀▀▀▀▀▀▀
colin@colin-chat-dev ~ % keybase chat upload ... foo
▶ ERROR Keybase services aren't running - KBFS client not found. On Linux you need to start them after an update with run_keybase command.

maxtaco commented 6 years ago

Can you run keybase log send?

maxtaco commented 6 years ago

@c00w never mind, it's there right on the top.

strib commented 6 years ago

Hmm, the initialization code hit a timeout for some reason, haven't seen this before:

2017-10-17T16:06:49.240779Z ▶ [WARN kbfs init.go:686] 027 Could not initialize journal server: context deadline exceeded

@c00w: is there anything unusual about your hard drive? I have no clue why it would take so long. I guess there could be a deadlock somewhere but I don't have any ideas offhand...

@maxtaco: it feels like chat should block for a while waiting for kbfs to start, there's no guarantees on startup ordering.

c00w commented 6 years ago

I mean it's running on digital ocean, but it seemed to download fine - I can check the disk usage, but I would be surprised if it was high / full.

On Tue, Oct 17, 2017, 7:39 PM Jeremy Stribling notifications@github.com wrote:

Hmm, the initialization code hit a timeout for some reason, haven't seen this before:

2017-10-17T16:06:49.240779Z ▶ [WARN kbfs init.go:686] 027 Could not initialize journal server: context deadline exceeded

@c00w https://github.com/c00w: is there anything unusual about your hard drive? I have no clue why it would take so long. I guess there could be a deadlock somewhere but I don't have any ideas offhand...

@maxtaco https://github.com/maxtaco: it feels like chat should block for a while waiting for kbfs to start, there's no guarantees on startup ordering.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/keybase/client/issues/9093#issuecomment-337301495, or mute the thread https://github.com/notifications/unsubscribe-auth/AAdrNz8-YFNiEuGpwgovnIuewFhq0WuKks5stOYEgaJpZM4P8bmj .

strib commented 6 years ago

I was mostly curious if the performance of the hard drive could be bad (i.e., blocking reads/writes for multiple seconds), not that it's full or anything. Seems unlikely though.

It seems more likely that KBFS's connection to the service socket stalled somehow. It looks like it tried to connect before the socket was ready, and then didn't retry until the context expired 10s later, when I think it should have retried after 2 seconds. Maybe net.Dial got stuck somehow?

In any case, @maxtaco I still think the safest thing is for CLI chat commands to block on the KBFS connection.

strib commented 6 years ago

I just noticed a deadlock in the service connection code, will fix. But that won't solve the underlying issue of there not being a guaranteed order on startup.