[Asterisk-code-review] media cache: Add a core API and facade for a backend agnosti... (asterisk[master])

Matt Jordan asteriskteam at digium.com
Sat Jul 11 16:27:39 CDT 2015


Matt Jordan has posted comments on this change.

Change subject: media cache: Add a core API and facade for a backend agnostic media cache
......................................................................


Patch Set 5:

> > (2 comments)
 > 
 > Yeah, you're right in both cases.
 > 
 > There's actually a larger problem here, which is that when the
 > media cache is initialized during startup, there are no backends.
 > So... Hm.
 > 
 > Really, we'd like to use the stored files/metadata if we have them.
 > Consider the following:
 > * A file is pulled down, and the expiry on the file says it's good
 > for an hour.
 > * Immediately, someone restarts Asterisk.
 > * Someone attempts to play the file again.
 > 
 > If we haven't stored the location of the file with its URI along
 > with the metadata, we'd have to go query the backend again. That's
 > not good.
 > 
 > On the other hand, we *can't* query the backend when this is
 > initialized - so the best we can do is restore "what we last knew
 > about" into the ao2_container, and let a future query
 > validate/invalidate that information.

Of course, the real problem is that we don't have the metadata that we need.

The backend sets the metadata on the bucket that it uses to consider whether or not the item is stale. Since we don't have that key, we can't store it.

How about exposing an API in bucket.h that let's us have an ao2 callback function get called on the metadata items? That would let us store all of the metadata associated with a bucket - regardless of the backend implementation - as well as rehydrate it later.

-- 
To view, visit https://gerrit.asterisk.org/487
To unsubscribe, visit https://gerrit.asterisk.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I11227abbf14d8929eeb140ddd101dd5c3820391e
Gerrit-PatchSet: 5
Gerrit-Project: asterisk
Gerrit-Branch: master
Gerrit-Owner: Matt Jordan <mjordan at digium.com>
Gerrit-Reviewer: Anonymous Coward #1000019
Gerrit-Reviewer: Joshua Colp <jcolp at digium.com>
Gerrit-Reviewer: Matt Jordan <mjordan at digium.com>
Gerrit-HasComments: No



More information about the asterisk-code-review mailing list