6.0.0-git
2019-03-20

[#11064] Turba Browse is very inefficient
Summary Turba Browse is very inefficient
Queue Turba
Queue Version Git master
Type Enhancement
State Rejected
Priority 1. Low
Owners
Requester slusarz (at) horde (dot) org
Created 2012-03-09 (2567 days ago)
Due
Updated 2012-06-27 (2457 days ago)
Assigned
Resolved 2012-06-27 (2457 days ago)
Milestone
Patch No

History
2012-06-27 21:07:52 Michael Slusarz Comment #5
State ⇒ Rejected
Reply to this comment
Going to reject, since Jan says this is not going to be possible with 
current code.
2012-04-05 17:01:24 Jan Schneider Comment #4 Reply to this comment
The actual problem is that 1) name fields are usually composite fields 
and 2) there is the user preference that defines the name format for 
sorting. For the filtering to reliably work, this would require 
composing the fields on the database level. I doubt this is going to 
be possible in a portable way.
2012-03-09 20:20:31 Michael Slusarz Comment #3 Reply to this comment

[Show Quoted Text - 11 lines]
The problem, at least as I can tell, is that the way the Turba Views 
are designed.  The Browse View is passed a search result, and it is 
only in that view that the filter (from URL parameter data) is 
determined.

In other words, the filter can't be applied at the time the search is 
done based on the current architecture.
2012-03-09 20:09:58 Ralf Lang (B1 Systems GmbH) Comment #2 Reply to this comment
Browsing in Turba (at least via SQL driver) will query ALL contacts 
on every page, regardless if you are filtering - for example, by a 
letter when using the alphabet pager.  It is the View code that is 
doing the filtering.  This is incorrect behavior - the query should 
be filtered at the DB level instead - it reduces overhead and SQL is 
precisely designed for this kind of filtering, so it is the proper 
tool for the job.
Driver->search should support criteria like limit(n) and %like% or 
startwith('a')
This probably applies to more backends.
2012-03-09 20:01:23 Michael Slusarz Comment #1
Type ⇒ Enhancement
State ⇒ New
Priority ⇒ 1. Low
Summary ⇒ Turba Browse is very inefficient
Queue ⇒ Turba
Milestone ⇒
Patch ⇒ No
Reply to this comment
Browsing in Turba (at least via SQL driver) will query ALL contacts on 
every page, regardless if you are filtering - for example, by a letter 
when using the alphabet pager.  It is the View code that is doing the 
filtering.  This is incorrect behavior - the query should be filtered 
at the DB level instead - it reduces overhead and SQL is precisely 
designed for this kind of filtering, so it is the proper tool for the 
job.

Saved Queries