Last modified: 2014-02-12 23:38:25 UTC
We have had an edit at nl.wikipedia.org where the filter reacted on. But the filter shouldn't react at that edit. When we test the edit to the filter, it says it doesnt match, but somehow, the filter has reacted at the moment of submit by the editor. The filter has not changed in the time between the edit and now. We simply don't understand how the filter could react at this edit. Edit information: http://nl.wikipedia.org/wiki/Speciaal:Misbruikfilter/examine/log/29961 Filter information: http://nl.wikipedia.org/wiki/Speciaal:Misbruikfilter/18
Fixed.
(In reply to comment #1) > Fixed. > Fixed how?
removing the lcase would do the trick :)
The bug itself is not fixed. Abigor changed the filter to not use lcase. That solves the problem for this filter, but it seems that lcase is buggy. So please still look into this.
(after editconflict) No, it isn't fixed at all. The problem isn't in the filter code, that's the problem! I'll explain some more; This is the code of filter that worked: article_namespace == 0 & article_recent_contributors == "" & new_size < 50 & !contains_any(lcase(added_lines),"#redirect","#doorverwijzing") The edit: added_lines = #DOORVERWIJZING[[Eufemisme]] When I test the full edit at http://nl.wikipedia.org/wiki/Speciaal:Misbruikfilter/examine/log/29961 with the above mentioned filter, it says the filter doesn't match.(!) Somehow the filter /did/ react at the edit, while it wasn't possible. The problem isn't in the filter code, but somewhere else. Huib changed the code a little bit, but the (old) filter did also work properly.
last sentence of me isn't right, 'Huib changed the code a little bit, but the (old) filter did also work properly', --> 'Huib changed the code a little bit which solved the problem with the filter, but it didn't solve the bug (as mentioned above)'.
I can see that the hit should not have occurred, but I have no way of testing or reproducing it, unless somebody can show me a consistent way of reproducing the bug.
reproducing is hard, as the error doesn't appear always. Given the fix that Abigor did, it seems that the problem is in the lcase-function. But I understand debugging will be hard.
I will write down what I did so you could reproduce it, I also have the filter code for the moment that the error occurred (before my fix) But that will be something I do when I have the time, could take a day or two.
Any further improvements on this one?
ping.