Shuffle gets stuck after forced re-login restores an old SavedPlayQueue with shuffleIndexes
Environment:
- Audirvāna Studio 3.1.0 Linux ARM64
- Fedora Asahi Remix / Asahi Linux
- Mac mini running headless
- Audirvāna Remote on iOS
- Remote connected by direct IP address and port
- Qobuz account in use
Description:
This issue does not seem to happen during normal playback.
In my case, it happened after Audirvāna Studio 3.x asked me to sign in again after rebooting Linux. After signing in again from Audirvāna Remote, the play queue was unexpectedly restored to an older queue, not the queue I had before rebooting.
After that, shuffle playback became stuck enabled. Pressing the shuffle button in Audirvāna Remote did not disable shuffle. Restarting Audirvāna Studio and rebooting Linux did not fix the issue.
I inspected the local Audirvāna database and found that the PREFERENCES table contained a SavedPlayQueue entry with shuffleIndexes, for example:
“shuffleIndexes”:[0,2,3,1,4]
After stopping Audirvāna Studio and deleting only the SavedPlayQueue row from the PREFERENCES table, the issue was fixed. Shuffle was no longer stuck enabled.
Steps observed:
- Audirvāna Studio 3.1.0 Linux ARM64 was running headless.
- After rebooting Linux, Audirvāna Remote asked me to sign in again.
- I signed in again from Remote.
- The play queue was restored to an older queue.
- Shuffle was enabled and could not be disabled from Remote.
- Restarting Audirvāna Studio did not fix it.
- Rebooting Linux did not fix it.
- The local database contained SavedPlayQueue with shuffleIndexes.
- Deleting the SavedPlayQueue row from PREFERENCES fixed the issue.
Important:
The trigger seems to be the forced re-login restoring an obsolete SavedPlayQueue, not normal shuffle playback itself.
Expected behavior:
After re-login, Audirvāna should not restore an obsolete play queue with stale shuffleIndexes. Also, even if a restored queue contains shuffleIndexes, the Remote shuffle button should still be able to disable shuffle.
Actual behavior:
After forced re-login, an older SavedPlayQueue was restored. That queue contained shuffleIndexes, and shuffle then became impossible to disable from Audirvāna Remote.