Incorrect value sent to solr

Łukasz Szczepański l.szczepanski at webd.pl
Fri Apr 2 16:11:35 EEST 2021


Hello,

I've recently stumbled upon an error in fts-solr plugin.
Dovecot sends "rows" parameter to solr when someone is searching in
mailbox, but value of rows can be bigger than int in java.
If I understand correctly, rows is equal to the last message id on
current imap folder.
I have mailbox where last uid value is 2206267083 and when I tried to
search in this mailbox I got error 400 - Bad Request. 

On a Solr side I got an error:
java.lang.NumberFormatException: For input string: "2206267083"
NumberFormat expect an int which max value is 2147483647.

Quick test reviles that rows parameter isn't required for correct
response from solr.
I think that dovecot should check if the value of rows is a correct int,
and if not, just skip this argument. 

Dovecot version: 2.3.11.3 (502c39af9)
Solr version: 8.7.0 

------------------
Łukasz Szczepański
+48 58 3509284
www.webd.pl [1]
Globtel Internet 

Links:
------
[1] http://www.webd.pl
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://dovecot.org/pipermail/dovecot/attachments/20210402/051aa345/attachment.html>


More information about the dovecot mailing list