removing query attributes from gloda - which are allowed now? (refer to Jonathan's anouncement of 2011)

Andrew Sutherland asutherland at asutherland.org
Sun Mar 12 19:52:50 UTC 2017


On Sun, Mar 12, 2017, at 08:52 AM, opto at optosolar.com wrote:
> But I don't know how many tags there might be. So I tried to replace
> parameter list by apply: query_q.tags.apply(this,tagArray);

This is the right idea; but you want to replace "this" with "query_q". 
The first argument is the value to use for "this" when the "tags" method
is invoked, which you want to be query_q.   (Note that I understand this
may be a typo; the semantics of "this" are one of the more confusing
aspects of JS.  The docs at
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/this
are pretty good for anyone wanting to learn more.)

Note that Firefox and Thunderbird have supported "spread" syntax since
v27, so you can now do the much more readable:
query_q.tags(...tagArray);

See
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_operator
for more details on that.

> What am I doing wrong? Or is there another way to get all tagged
> messages, can I use notability for that (I don't understand that concept
> yet, and it can't be googled, no results).

Notability is used for gloda fulltext search to "boost" the result score
of messages that are believed to be more likely of interest to the user.
 Fulltext search results are ordered by time, with the search match
results scoring heuristics and (not impacted by search matches) message
notability causing the message to be treated like it is more recent than
it really is.  Each notability point is worth 1 week of recency, which
was a very arbitrary choice.

Notability is only stored in the messages table and is not indexed, so
any query trying to leverage it would require a table scan[1], which is
likely undesirable.

Useful links to learn more about notability and how it's used:
https://dxr.mozilla.org/comm-central/source/mailnews/db/gloda/modules/msg_search.js#15
https://dxr.mozilla.org/comm-central/source/mailnews/db/gloda/modules/explattr.js#58
https://dxr.mozilla.org/comm-central/source/mailnews/db/gloda/modules/fundattr.js#54

Andrew

1: https://www.sqlite.org/queryplanner.html#_tables_without_indices


More information about the tb-planning mailing list