Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve cache logic to perform out-of-band updates #1047

Closed
sssd-bot opened this issue May 2, 2020 · 0 comments
Closed

Improve cache logic to perform out-of-band updates #1047

sssd-bot opened this issue May 2, 2020 · 0 comments
Assignees
Labels
Closed: Fixed Issue was closed as fixed.

Comments

@sssd-bot
Copy link

sssd-bot commented May 2, 2020

Cloned from Pagure issue: https://pagure.io/SSSD/sssd/issue/5

  • Created at 2009-03-17 15:55:29 by sgallagh
  • Closed as Fixed
  • Assigned to sgallagh

Currently, we only update the sysdb cache when the cache timeout has expired. This means that the client must wait until a cache refresh of the entry completes.

In order to reduce the frequency that we block the clients for refreshes, we will implement an out-of-band update. If the client requests data that is available in the cache, we will return it immediately; if the time between now and the timeout period is less than half of the timeout interval, we will trigger a cache update behind the scenes, so that the next time a request is made, the cache will be more recent.

In a busy system (requests are received at least twice as often as the cache times out), this will significantly reduce cache update delay.

In a slow system (requests are received less often than the cache timeout), there will be no difference between this approach and the current implementation.

The worst-case scenario (that of the busy system) is that we will make twice as many cache requests to the back-end provider.

Comments


Comment from simo at 2009-03-17 16:10:04

I'd like to see this as an optional feature and probably disabled by default.
If someone sees minor delays as a problem they may decide to turn this option up, but by default this would only generate more load on the system and more traffic on the network unnecessarily. IMO.


Comment from sgallagh at 2009-06-16 16:55:58

Deferred for future optimization.

fixedin: =>
milestone: Iteration 2 => Deferred


Comment from sgallagh at 2009-07-01 16:56:07

Fields changed

milestone: Deferred => Iteration 6


Comment from sgallagh at 2009-08-12 16:02:26

Fields changed

status: new => assigned


Comment from sgallagh at 2009-08-14 15:20:15

Marking this bug as a blocker to 0.5.0 release.

priority: major => blocker


Comment from sgallagh at 2009-08-17 17:25:25

We've determined that to do this job correctly requires some refactoring of the nsssrv_cmd.c functions. This is a bigger job than is feasible in the 0.5.0 schedule, so I'm dropping the priority. It will be fixed immediately after 0.5.0.

component: SSSD => Data Provider
priority: blocker => major


Comment from sgallagh at 2009-08-24 17:20:11

Fields changed

milestone: SSSD 0.5.0 => SSSD 0.6.0


Comment from sgallagh at 2009-09-09 16:42:40

Fixed in ab66a19

HOWTO and manpages have been updated to include references to the new EntryCacheNoWaitRefreshTimeout.

When testing this feature, it is important to do so with enumerate = false, as the enumeration processing will hide this enhancement.

doc: => 1
docupdated: => 1
fixedin: => 0.6.0
resolution: => fixed
status: assigned => closed
tests: => 1
testsupdated: => 0


Comment from dpal at 2012-01-19 02:16:07

Fields changed

rhbz: => 0


Comment from sgallagh at 2017-02-24 14:58:24

Metadata Update from @sgallagh:

  • Issue assigned to sgallagh
  • Issue set to the milestone: SSSD 0.6.0
@sssd-bot sssd-bot added the Closed: Fixed Issue was closed as fixed. label May 2, 2020
@sssd-bot sssd-bot closed this as completed May 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Closed: Fixed Issue was closed as fixed.
Projects
None yet
Development

No branches or pull requests

2 participants