I'm using fish 3.6.4 with this configuration. Typically I run fish within tmux, with a few different tmux windows open at a time.
I find that a few times per day, fish seems to forget history for commands I run all of the time. For example, I run a command of this form many times per day:
Normally when I typ fo, fish will automatically complete the rest of it and I can press right, then enter, to run it. But a few times per day one instance of fish will totally forget it, and auto-complete a broken typo version I ran months ago:
If I switch to other instances of fish running in other tmux windows, they don't have this problem: they still autocomplete correctly. If I close the tmux window and open a new one, the new instance of fish is fine. Even if I run fish to get a new sub-shell within the broken instance, it also uses the correct history. It's only the one busted instance of fish.
To be clear, it's not just one command. This issue happens with several different commands that I run frequently, and it seems like when fish gets into this state it's all recent history that is lost, not just one command.
It's almost as if there is some in-memory circular buffer of history, and it eventually overflows when I run enough commands, and then fish is confused and thinks old history is current.
How can I debug this issue? Is there anything I can collect to help you understand it better?
> fish --version
fish, version 3.6.4
> uname -a
Linux <redacted>.com 6.5.13-1rodete2-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.5.13-1rodete2 (2024-01-11) x86_64 GNU/Linux
> echo $TERM
screen-256color
> tmux -V
tmux 3.3a
I'm using fish 3.6.4 with this configuration. Typically I run fish within tmux, with a few different tmux windows open at a time.
I find that a few times per day, fish seems to forget history for commands I run all of the time. For example, I run a command of this form many times per day:
Normally when I typ
fo, fish will automatically complete the rest of it and I can press right, then enter, to run it. But a few times per day one instance of fish will totally forget it, and auto-complete a broken typo version I ran months ago:If I switch to other instances of fish running in other tmux windows, they don't have this problem: they still autocomplete correctly. If I close the tmux window and open a new one, the new instance of fish is fine. Even if I run
fishto get a new sub-shell within the broken instance, it also uses the correct history. It's only the one busted instance of fish.To be clear, it's not just one command. This issue happens with several different commands that I run frequently, and it seems like when fish gets into this state it's all recent history that is lost, not just one command.
It's almost as if there is some in-memory circular buffer of history, and it eventually overflows when I run enough commands, and then fish is confused and thinks old history is current.
How can I debug this issue? Is there anything I can collect to help you understand it better?