ipx rm and ipx add while the daemon runs change the database but not the daemon, which then undoes them #120

Closed
opened 2026-10-04 15:44:51 -07:00 by rays · 1 comment
Owner

Found on 2026-10-04: docker exec iPX ipx rm make printed 'removed make' and took it out of the catalogue table, but the web UI still listed it, from /api/feeds.

add, rm, import and user are not sent to the daemon over the socket (wire_cmd in main.rs is None for them); they run in their own process with their own Ctx and call store_cfg there. The daemon keeps its in-memory Config and never rereads the catalogue. Db::store_config deletes every catalogue row and writes the caller's Config back, so the daemon's next store_cfg (an admin's edit in the web UI, a feed categorised since #117, a moved feed followed since #115) writes the removed feed back and drops anything the CLI added.

Either send these commands to the daemon when one is live, as fetch, reap and status are, or have the daemon reread the catalogue when told it changed.

Found on 2026-10-04: docker exec iPX ipx rm make printed 'removed make' and took it out of the catalogue table, but the web UI still listed it, from /api/feeds. add, rm, import and user are not sent to the daemon over the socket (wire_cmd in main.rs is None for them); they run in their own process with their own Ctx and call store_cfg there. The daemon keeps its in-memory Config and never rereads the catalogue. Db::store_config deletes every catalogue row and writes the caller's Config back, so the daemon's next store_cfg (an admin's edit in the web UI, a feed categorised since #117, a moved feed followed since #115) writes the removed feed back and drops anything the CLI added. Either send these commands to the daemon when one is live, as fetch, reap and status are, or have the daemon reread the catalogue when told it changed.
rays added the bug label 2026-10-04 15:44:51 -07:00
Author
Owner

Fixed in a553d05: a socket command, reload, has the daemon read the catalogue and settings again from the database, answered at once as status is; ipx add, rm and import send it when a daemon is live. A browser test runs the real ipx add --list and rm against the test daemon, with an admin's edit after each. Released in 0.10.1, deployed 2026-10-05.

Fixed in a553d05: a socket command, reload, has the daemon read the catalogue and settings again from the database, answered at once as status is; ipx add, rm and import send it when a daemon is live. A browser test runs the real ipx add --list and rm against the test daemon, with an admin's edit after each. Released in 0.10.1, deployed 2026-10-05.
rays closed this issue 2026-10-05 12:58:45 -07:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: rays/ipx#120