[Bug]: Shell commands freeze when daemon crashes but socket is active
What did you expect to happen?
Hi, first of all thank you for building and maintaining atuin!
So, I upgraded my atuin client from 18.12.1 to 18.13.6 via a NixOS rebuild, which looks to have applied a new database migration (20260224000100) on my client DB. I then had to rollback to the previous NixOS generation due to some unrelated stuff breaking, which brought back atuin 18.12.1. This older atuin version doesn't include that migration, so the shell client daemon crashes on startup:
Error: migration 20260224000100 was previously applied but is missing in the resolved migrations
Caused by:
migration 20260224000100 was previously applied but is missing in the resolved migrations
Location:
crates/atuin/src/command/client.rs:144:18which makes sense. I wanted to execute some shell commands (irrespective of atuin failing) and expected them to run fine.
What happened?
However, when I did try to execute any shell command, ls or anything else while booted into the generation with the older atuin version, happened to freeze indefinitely until I issued a Ctrl-C to interrupt them manually.
Thought I'd report this as I think this shell command freezing issue could lock the user out of their machine in some cases. Fortunately in my case, I had openssh server enabled on the machine and I was able to recover by running commands through ssh without a tty to reset my atuin DB using ssh me@mymachine "mv ~/.local/share/atuin/history.db{,.bak}" and restart atuin daemon.
It seems the connection to atuin's client socket never times out? Which keeps it waiting.
Atuin doctor output
atuin client config:
auto_sync = true
enter_accept = true
filter_mode = "host"
filter_mode_shell_up_key_binding = "host"
inline_height = 6
max_preview_height = 40
secrets_filter = false
show_tabs = false
style = "compact"
sync_address = "http://example.com:7235"
sync_frequency = 0
[daemon]
enabled = true
systemd_socket = true
[sync]
records = true
atuin doctor (with 18.12.1):
$ ssh me@mymachine "atuin doctor"
Atuin Doctor
Checking for diagnostics
Please include the output below with any bug reports or issues
{
"atuin": {
"version": "18.12.1",
"commit": "NO_GIT",
"sync": {
"cloud": false,
"records": true,
"auto_sync": true,
"last_sync": "2026-04-06 11:42:43.787909162 +00:00:00"
},
"sqlite_version": "3.46.0"
},
"shell": {
"name": "sshd-session",
"default": "zsh",
"plugins": [],
"preexec": null
},
"system": {
"os": "NixOS",
"arch": "aarch64",
"version": "26.05",
"disks": [
{
"name": "/dev/nvme0n1p2",
"filesystem": "ext4"
},
{
"name": "/dev/nvme0n1p2",
"filesystem": "ext4"
},
{
"name": "systemd-1",
"filesystem": "autofs"
},
{
"name": "systemd-1",
"filesystem": "autofs"
},
{
"name": "systemd-1",
"filesystem": "autofs"
},
{
"name": "/dev/nvme0n1p3",
"filesystem": "ext4"
}
]
}
}
Let me know if there's anything else I can help with. I'm able to reproduce this freezing issue consistently by rolling back to older atuin.Code of Conduct
- I agree to follow this project's Code of Conduct
Source: atuinsh/atuin