I'm not as familiar with C, but I don't see in solr backed in dovecot any clue of subsequent queries for single mailbox lookup (which most mail client uses). There is a hard limit of 100000 rows for multiple mailbox lookup.
W dniu 2021-04-07 12:48, Shawn Heisey napisał(a):
On 4/7/2021 4:13 AM, Łukasz Szczepański wrote:
I've prepared pull request with fixed rows parameter: https://github.com/dovecot/core/pull/160 I've tested this fix on mailbox which caused a problem earlier, and its works fine.
I admit to not being very familiar with dovecot source, but I did a little digging and that fix looks good to my untrained eye.
If somebody has 2.2 billion or more messages in one place, the query will still fail, but it should be pretty rare to ever run into that use case in the wild. And I think it might cause performance problems in dovecot too.
Does the solr backend code ever use pagination on the search results by sending a fixed rows value and increasing start value on subsequent queries?
I think that I and my fellow Solr committers need to treat this as a bug on our end, since it would be perfectly valid to request that many rows on a distributed index. A query like that where there really are that many rows would be embarrassingly slow to execute and require a LOT of memory, but it's still valid. I am asking on the solr users list whether they think I should file a bug report.
Thanks, Shawn
Łukasz Szczepański +48 58 3509284 www.webd.pl Globtel Internet