6.0.0-alpha10
5/17/25

[#6157] Groups null driver
Summary Groups null driver
Queue Horde Framework Packages
Queue Version HEAD
Type Enhancement
State Resolved
Priority 1. Low
Owners chuck (at) horde (dot) org
Requester duck (at) obala (dot) net
Created 01/27/2008 (6320 days ago)
Due
Updated 02/07/2008 (6309 days ago)
Assigned
Resolved 02/06/2008 (6310 days ago)
Milestone
Patch No

History
02/07/2008 05:27:16 PM Jan Schneider Comment #8 Reply to this comment
Or don't cache it at all, now that we have the null driver, or maybe 
once we integrated the better-performing sql driver.
02/07/2008 04:59:48 PM Chuck Hagenbuch Comment #7 Reply to this comment
We are storing the entire objects in session. Imagine a group with
100 members, is really big. So all users will have this group in
their session. But they need to know only if they are in this group
or the list of groups they are in. So why we don't cache only this
"end data", not entire objects and recheck them every page load? Will
save some time and a lot of session memory.
Seems like we could either cache the group globally, or the access 
info in the session.
02/07/2008 08:33:20 AM Duck Comment #6 Reply to this comment
Sorry, I don't follow. Is that a response to what I've written? Or
just a general rant? And what are you actually saying?
We are storing the entire objects in session. Imagine a group with 100 
members, is really big. So all users will have this group in their 
session. But they need to know only if they are in this group or the 
list of groups they are in. So why we don't cache only this "end 
data", not entire objects and recheck them every page load? Will save 
some time and a lot of session memory.
02/06/2008 08:33:23 PM Chuck Hagenbuch Comment #5
Assigned to Chuck Hagenbuch
State ⇒ Resolved
Reply to this comment
Having the abstract Group API separate from the null definition is 
fine too, though I agree that the datatree def should move into its 
own subclass.



I've committed this as the "mock" driver. Thanks!
01/28/2008 11:52:25 PM Jan Schneider Comment #4 Reply to this comment
Sorry, I don't follow. Is that a response to what I've written? Or 
just a general rant? And what are you actually saying?
01/28/2008 05:09:48 PM Duck Comment #3 Reply to this comment
Looking better session objects are abused in the current driver 
implementation. We normally just check if a user is in specified group 
(ex. in perms) or its membership (ex. in shares). So instead of 
storing the call results, is being stored all linking groups objects. 
That grows fast with large installations making session data bigger 
without any special need as other calls are manly if not all 
administrative.
01/28/2008 08:52:08 AM Jan Schneider Comment #2
State ⇒ Feedback
Reply to this comment
Though this null driver is definitely the most simple solution, it 
*feels* more correct to implement the "null functionality" in the base 
class and move the datatree code into a separate driver instead.

Besides that, I wonder why we didn't add such a driver earlier. It's 
simple enough to even get merged to FW_3, and we can swap the null and 
datatree driver in HEAD.
01/27/2008 02:13:23 PM Duck Comment #1
Priority ⇒ 1. Low
State ⇒ New
New Attachment: null.php Download
Queue ⇒ Horde Framework Packages
Summary ⇒ Groups null driver
Type ⇒ Enhancement
Reply to this comment
Even the groups data are cached in session, for installations not 
using groups this means additional objects creation, DT SQL queries 
and writing of session data. Null driver just returns empty values to 
avoid not needed load for sites not using groups.

Saved Queries