On 4/3/2021 12:12 PM, Łukasz Szczepański wrote:
Rows isn't part of manage-schema for solr collection its build in common query parameters in solr, and type of this field cannot be changed. It controls the number of returned results (by default 10). I still think that an issue on dovecot side, but I was also wrong, this parameter is important and have to be sent. Dovecot should send a count of messages in mailbox (or imap folder) not the highest uid in folder.
I just tried a query on a stock Solr example with rows set to 3000000000 and got an error similar to the one you reported.
org.apache.solr.common.SolrException: For input string: "3000000000"
No mention of "int" in this error. I'm wondering if that part was something you added to the email, not text that was actually in the error.
I was using Solr 8.5.1, the newest version I have downloaded right now.
This error also occurs in cloud mode. With distributed indexes, it could be perfectly acceptable to use a rows parameter that exceeds what a signed int can hold. Performance would probably suck when using a value that high, but it would be acceptable. Which smells like a bug in Solr.
I can tell you that using a value from uid in the rows parameter is almost certainly not the right thing to do. That field would have no connection to rows.
Thanks, Shawn