I’ve been using Usenapp for a couple of weeks now, transferring over from Unison. I’m slowly moving my rules to search for items over. It would have been far easier to be able to copy things over to the Newsreader instead of having to convert everything over to the Watchdog but such is life. Instead of having a whole bunch of items in the Watchdog pane I am combing things that go together. This allows me to reduce the number of times I have to copy anything I have to weed out posts that I’m not interested in. However some of my search queries started failing all of a sudden and were coming back with the error message telling me to check my query for unclosed parentheses. I spent quite a while checking over things and even wrote a little script so that I could write my queries in text files with the element slayed out in a hierarchy (similar to a XML or JSON text data file) in order to verify that everything was correct. I would then run my script to pack everything down, or implode it, onto a single line in order to copy it and paste it in the query field. This did not solve the issue but as a side effect does make writing more complicated queries easier for me at least.
After some testing I have found that there is a 351 character limit on a query. Anything after that limit is truncated and the error stating that the query cannot be parsed and the user should check for unclosed parentheses is shown. First of all, the error is that the user entered a query that was longer than the system supports. Secondly, it’s not really the users fault because the user interface should not allow the user to enter a query longer than what is supported. If there is a length limit on a data value then any field that allows data entry should not allow a longer value to be entered. If it does then at the very least the user should be told that is the reason for the error.
The error that pops up in MegaSearch after trying a search that is too long.
The entry in the Watchdog for a query that is too long.
To recreate this error just enter a search that is more than 351 characters in length so that a trailing bracket is past the 351st character. For example the search “( Usenapp ) AND ( Searching <350 spaces> )” where <350 spaces> is replaced with 350 actual spaces will fail.
I’m using Version 1.19 (Build 354) on macOS 10.15.7 (19H1824).