Return-Path: Delivered-To: apmail-jakarta-lucene-dev-archive@apache.org Received: (qmail 77063 invoked from network); 26 Jan 2003 05:07:32 -0000 Received: from exchange.sun.com (192.18.33.10) by daedalus.apache.org with SMTP; 26 Jan 2003 05:07:32 -0000 Received: (qmail 18291 invoked by uid 97); 26 Jan 2003 05:09:05 -0000 Delivered-To: qmlist-jakarta-archive-lucene-dev@jakarta.apache.org Received: (qmail 18253 invoked by uid 97); 26 Jan 2003 05:09:04 -0000 Mailing-List: contact lucene-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Lucene Developers List" Reply-To: "Lucene Developers List" Delivered-To: mailing list lucene-dev@jakarta.apache.org Received: (qmail 18241 invoked by uid 98); 26 Jan 2003 05:09:04 -0000 X-Antivirus: nagoya (v4218 created Aug 14 2002) Message-ID: <20030126050737.63492.qmail@web12706.mail.yahoo.com> Date: Sat, 25 Jan 2003 21:07:37 -0800 (PST) From: Otis Gospodnetic Subject: Re: bug in escaping special characters To: Lucene Developers List In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Sorry, I'm not sure if I follow everything you said, but judging from that JUnit output in your message it looks like your changes now just get rid of _all_ \ characters, which is, I believe, wrong. "\\" is a "\" escaped with a "\". In this case the second "\" needs to remain, and your modifications eliminate it, and JUnit tests start failing. Anyhow, what problem are you trying to fix? Otis --- Kristian Hermsdorf wrote: > Hi Otis > > unfortunately the junit-test weren't successful but I think they > might be > incorrect or I misunderstand escaping. > > Though it seems to me, that the analyzer does affect the result of > the > junit-test I don't understand why it does. I thought the tokens > produced by > the analyzer should not contain the escaping-char anymore, does they? > > Should not result the query-string for \[something in a query for > [something ? > > Maybee you could enlighten me, how the junit-test is meant and how > escaping > should work. > thanks > > Kristian > > > public void testEscaped() throws Exception { > Analyzer a = new WhitespaceAnalyzer(); > assertQueryEquals("\\[brackets", a, "\\[brackets"); > ...fails > assertQueryEquals("\\[brackets", null, "brackets"); > ...works > assertQueryEquals("\\\\", a, "\\\\"); > assertQueryEquals("\\+blah", a, "\\+blah"); > assertQueryEquals("\\(blah", a, "\\(blah"); > } > > Query /\[brackets/ yielded /[brackets/, expecting /\[brackets/ > junit.framework.AssertionFailedError: Query /\[brackets/ yielded > /[brackets/, expecting /\[brackets/ > at > org.apache.lucene.queryParser.TestQueryParser.assertQueryEquals(Unknown > > Source) > at org.apache.lucene.queryParser.TestQueryParser.testEscaped(Unknown > > Source) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > > > > On Wed, 22 Jan 2003 17:40:38 -0800 (PST), Otis Gospodnetic > wrote: > > > Hello Kristian, thanks for the contribution. > > > > Two quick questions: > > > > 1. do all unit tests still pass after your changes? (ant test-unit) > > 2. could you please make the diff against the latest > QueryParser.jj? > > (it seems like your QueryParser.jj is from June 2002 :)) > > > > Thanks! > > Otis > > > > > > --- Kristian Hermsdorf wrote: > >> Hi everyone ... > >> I think I found a bug in lucene query mechanism. QueryParser does > >> mask spechial charakters but doesn't unmask them. So a search for > >> field:a\:b did really search for a\:b in field (and not for a:b). > >> I added a few lines in QueryParser.jj to fix this issue. > >> I also added ' ' to _ESCAPED_CHAR to enable searches like > >> field:hello\ world. > >> I attach QueryParser.jj and bugfix.diff and hope these changes > does > >> not collide with other thinks... > >> > >> bye > >> Kristian > >> -- ACRONYM: Acronym Causing Recursion, Obviously Numbing Your Mind > >> Kristian Hermsdorf > >> interface:projects gmbh > >> Tollkewitzer Stra�e 49 > >> 01277 Dresden > >> > >> tel.: ++49-351-3 18 09 39 > >> mail: Kristian.Hermsdorf@interface-business.de > >> priv: kristian@entropus.de > > > >> ATTACHMENT part 2 application/octet-stream name=QueryParser.jj > > > > > >> ATTACHMENT part 3 application/octet-stream name=bugfix.diff > >> -- > >> To unsubscribe, e-mail: >> unsubscribe@jakarta.apache.org> > >> For additional commands, e-mail: > > > > > > > > __________________________________________________ > > Do you Yahoo!? > > Yahoo! Mail Plus - Powerful. Affordable. Sign up now. > > http://mailplus.yahoo.com > > > > -- > > To unsubscribe, e-mail: > unsubscribe@jakarta.apache.org> > > For additional commands, e-mail: > help@jakarta.apache.org> > > > > > > > > > > -- > ACRONYM: Acronym Causing Recursion, Obviously Numbing Your Mind > > Kristian Hermsdorf > > interface:projects gmbh > Tollkewitzer Stra�e 49 > 01277 Dresden > > > tel.: ++49-351-3 18 09 39 > > mail: Kristian.Hermsdorf@interface-business.de > priv: kristian@entropus.de > > -- > To unsubscribe, e-mail: > > For additional commands, e-mail: > > __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com -- To unsubscribe, e-mail: For additional commands, e-mail: