Validate/add support for refreshing cached servers (e.g. server well-knowns) #64

Closed
opened 2024-01-03 16:46:08 +00:00 by girlbossceo · 1 comment
girlbossceo commented 2024-01-03 16:46:08 +00:00 (Migrated from github.com)

If a user has a bad well-known (invalid Content-Type, wrong server, etc) and fixed it later, Conduit may or may not have that bad server well-known cached until Conduit is restarted which isn't ideal, especially if compaction takes a long time for some users. This may result in Conduit falsely thinking the server is down as said requests would be failing when Conduit just needs to re-get the server well-known.

Should validate that this is the case, and if it is: add support for automatically clearing cached servers when requests fail. If subsequent requests fail after clearing cache, then exponential backoff should start kicking in.

I suspect this is why I have trouble connecting to mozilla.org sometimes and falls back to sending failing requests to mozilla.org:8448.

If a user has a bad well-known (invalid Content-Type, wrong server, etc) and fixed it later, Conduit may or may not have that bad server well-known cached until Conduit is restarted which isn't ideal, especially if compaction takes a long time for some users. This may result in Conduit falsely thinking the server is down as said requests would be failing when Conduit just needs to re-get the server well-known. Should validate that this is the case, and if it is: add support for automatically clearing cached servers when requests fail. If subsequent requests fail after clearing cache, then exponential backoff should start kicking in. I suspect this is why I have trouble connecting to mozilla.org sometimes and falls back to sending failing requests to `mozilla.org:8448`.
girlbossceo commented 2024-01-15 06:12:28 +00:00 (Migrated from github.com)

This should be enough: github.com/girlbossceo/conduwuit@0297cfe307

I don't think a command to evict all cached destinations is a good idea since that seems to be a ton of servers cached and we should only focus on the ones that we send requests to and fail and need to attempt to retry getting well-known.

This should be enough: https://github.com/girlbossceo/conduwuit/commit/0297cfe30720362a470a5d1a2cf96fae2ee55c1d I don't think a command to evict *all* cached destinations is a good idea since that seems to be a ton of servers cached and we should only focus on the ones that we send requests to and fail and need to attempt to retry getting well-known.
This discussion has been locked. Commenting is limited to contributors.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
continuwuation/continuwuity#64
No description provided.