The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#61
|
|||
|
|||
Quote:
It will indeed make another call to the other datastore storage, but as i understand it (and i could be wrong), for memcached it will query the storage each time it needs an item regardless of if it is stored in the proper storage method and if it isnt, it will query the datastore table and add it to cache. For file based, as far as i understand, the entire datastore is loaded into memory. I could be very wrong in this assumption and there may need to be file changes to both datastore classes to make it work properly. It may turn out that for other datastore methods (if we go with the table solution) there needs to be an additional query to the NEWTABLE table. Im not 100% sure that it will work for them, because I dont really know the mechanics. Ill look into it furthur if I have time today. |
#62
|
||||
|
||||
Yes, all Data (that was once put and TTL isn't over) will be in memory.
But it won't be available to vBulletin Code, as the Class doesn't recognize the Items if they are not default Items or in $specialtemplates. So, without knowing how they are stored exactly - how should (Plugin) Code get access? |
#63
|
|||
|
|||
Now i see what you're asking!
-- automerge sux!!! -- Looking through the code, init.php simply calls PHP Code:
One small almost irrelevant point, it would be nice to be able to specify if the datastore item should be unserialized. In my opinion the best way to deal with that would be to have another parameter for fetch() or register() that the caller tells the function to unserialize, instead of relying on an internal $unserialize array. Hope I made sense I should also note that I do not write this as an intention to hack vBulletin - Im discussing this as an addition to vBulletin. Maybe not the best forum for it, but Im sure the devs are looking at this thread. |
#64
|
|||
|
|||
By the time we started this thread RC1 was not yet (or just the day before) released. Jelsoft Dev's have been watching this thread before, and we had the slight hope (very long shot) that something could be done into the production release. But i think Jelsoft is way to far into the release process, to make a change to the system like at now.
In my opinion, worsed case scenario would be a standard solution that all coders could use, so files would only have to be edited once to implement custom datastore items. Edit: You are encouraged to post a proof of concept here so it will be easier to discuss. |
#65
|
|||
|
|||
Im sorry, I dont have the time to work on a proof of concept test base for code.
I do not believe that the idea needs to be tested, as whatever solution is presented will appear in vBulletin in a form that the developers believe is the most efficient and secure eventually. I dont understand your statement "Based on what condition you want to remove this?" and where it fits with what im saying? |
#66
|
|||
|
|||
Quote:
|
#67
|
|||
|
|||
What I have been doing for my forums and my private hacks is call the extra datastore items from fetch() and not worry about the extra query at this time.
In my opinion people are too query-mad. 1 or 2 extra very light weight queries are no fuss in the shortterm for most boards. Once a solution appears, the queries go away. -- On that note, i dont believe there necessarily needs to be any kind of single method of doing it if this functionality is eventually going to get added to vBulletin - the way we do it wont match the way they do it, so why have hacks that create incompatibilities like that? Maybe we could at least get an official word on their stance, then we would at least know what our position is. |
#68
|
||||
|
||||
I am sure they havent decided yet..cause it sure is taking much longer than before to come out with RC3 or Gold.
~Curt |
#69
|
|||
|
|||
Quote:
An official word on where datastore caching for products is at will help this discussion of the need to set a standard way to do it until such time as they do their thing. If it wont be added until 3.5.0+1 then there is every chance hackers will want to agree on a standard way to do things as Marco suggests. If it will be available before 3.5.0 becomes gold, I see no issue with waiting for the feature to be added instead of working our own solution out. |
#70
|
|||
|
|||
I've been thinking about a way around the problem in the meantime until Jelsoft do something to solve it, but how about using a plugin to store the extra "datastore" items a product needs to add?
Add a global_start plugin holding the array or variables you need. Let your product update that global_start plugin and rebuild the plugin datastore items. Could very well be an acceptable solution in the meantime? |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|