Possible bug ?
Wednesday, 13 April 2011 · 3 messages · last reply 14 Apr 2011
XS
xavier-laurent salvador13 Apr 2011 18:16 #
Hi,
here is a feedback for a "possible bug". I was trying to
ft:mark with a "\s" wildcard. Hope I helped,
Version: BaseX 6.6.1
Java: Sun Microsystems Inc., 1.6.0_18
OS: Linux, i386
Stack Trace:
java.lang.NegativeArraySizeException
org.basex.util.ft.WesternTokenizer.orig(WesternTokenizer.java:201) org.basex.util.ft.WesternTokenizer.get(WesternTokenizer.java:187)
org.basex.util.ft.WesternTokenizer.nextToken(WesternTokenizer.java:113) org.basex.util.ft.FTLexer.nextToken(FTLexer.java:116)
org.basex.query.ft.FTTokenizer.cache(FTTokenizer.java:105) org.basex.query.ft.FTWords.contains(FTWords.java:208)
org.basex.query.ft.FTWords.item(FTWords.java:130)
org.basex.query.ft.FTContains.item(FTContains.java:75)
org.basex.query.ft.FTContains.item(FTContains.java:1)
org.basex.query.expr.ParseExpr.ebv(ParseExpr.java:85)
org.basex.query.expr.ParseExpr.test(ParseExpr.java:98)
org.basex.query.expr.Preds.preds(Preds.java:99)
org.basex.query.path.IterStep$1.next(IterStep.java:49)
org.basex.query.iter.NodeIter.next(NodeIter.java:1)
org.basex.query.path.IterPath$1.next(IterPath.java:67)
org.basex.query.iter.NodeIter.next(NodeIter.java:1)
org.basex.query.func.FNFt$1.next(FNFt.java:97)
org.basex.query.iter.Iter.finish(Iter.java:65)
org.basex.query.expr.ParseExpr.value(ParseExpr.java:76)
org.basex.query.expr.Let$1.next(Let.java:94)
org.basex.query.expr.FLWR$1.next(FLWR.java:62)
org.basex.query.expr.Constr.<init>(Constr.java:55)
org.basex.query.expr.CElem.item(CElem.java:116)
org.basex.query.expr.CElem.item(CElem.java:1)
org.basex.query.expr.CFrag.item(CFrag.java:1)
org.basex.query.expr.ParseExpr.iter(ParseExpr.java:52)
org.basex.query.QueryContext.iter(QueryContext.java:329)
org.basex.query.expr.Constr.<init>(Constr.java:54)
org.basex.query.expr.CElem.item(CElem.java:116)
org.basex.query.expr.CElem.item(CElem.java:1)
org.basex.query.expr.CFrag.item(CFrag.java:1)
org.basex.query.expr.ParseExpr.iter(ParseExpr.java:52)
org.basex.query.QueryContext.iter(QueryContext.java:329)
org.basex.query.QueryContext.iter(QueryContext.java:294)
org.basex.query.QueryContext.eval(QueryContext.java:254)
org.basex.query.QueryProcessor.execute(QueryProcessor.java:113) org.basex.core.cmd.AQuery.query(AQuery.java:83)
org.basex.core.cmd.XQuery.run(XQuery.java:22)
org.basex.core.Command.run(Command.java:292)
org.basex.core.Command.exec(Command.java:274)
org.basex.core.Command.execute(Command.java:67)
org.basex.gui.GUI.exec(GUI.java:390)
org.basex.gui.GUI$5.run(GUI.java:351)CG
Christian Grün13 Apr 2011 18:19 #
Dear Xavier-Laurent,
thanks for the feedback. Do you have some more information (the original query, document or, ideally, an sscce) how to reproduce the exception?
Christian
Quoted text · xavier-laurent salvador · 65 lines
On Wed, Apr 13, 2011 at 6:16 PM, xavier-laurent salvador <xavier-laurent.salvador at univ-paris13.fr> wrote: > Hi, > here is a feedback for a "possible bug". I was trying to ft:mark with a > "\s" wildcard. Hope I helped, > > Version: BaseX 6.6.1 > Java: Sun Microsystems Inc., 1.6.0_18 > OS: Linux, i386 > Stack Trace: > java.lang.NegativeArraySizeException > org.basex.util.ft.WesternTokenizer.orig(WesternTokenizer.java:201) > org.basex.util.ft.WesternTokenizer.get(WesternTokenizer.java:187) > > org.basex.util.ft.WesternTokenizer.nextToken(WesternTokenizer.java:113) > org.basex.util.ft.FTLexer.nextToken(FTLexer.java:116) > org.basex.query.ft.FTTokenizer.cache(FTTokenizer.java:105) > org.basex.query.ft.FTWords.contains(FTWords.java:208) > org.basex.query.ft.FTWords.item(FTWords.java:130) > org.basex.query.ft.FTContains.item(FTContains.java:75) > org.basex.query.ft.FTContains.item(FTContains.java:1) > org.basex.query.expr.ParseExpr.ebv(ParseExpr.java:85) > org.basex.query.expr.ParseExpr.test(ParseExpr.java:98) > org.basex.query.expr.Preds.preds(Preds.java:99) > org.basex.query.path.IterStep$1.next(IterStep.java:49) > org.basex.query.iter.NodeIter.next(NodeIter.java:1) > org.basex.query.path.IterPath$1.next(IterPath.java:67) > org.basex.query.iter.NodeIter.next(NodeIter.java:1) > org.basex.query.func.FNFt$1.next(FNFt.java:97) > org.basex.query.iter.Iter.finish(Iter.java:65) > org.basex.query.expr.ParseExpr.value(ParseExpr.java:76) > org.basex.query.expr.Let$1.next(Let.java:94) > org.basex.query.expr.FLWR$1.next(FLWR.java:62) > org.basex.query.expr.Constr.<init>(Constr.java:55) > org.basex.query.expr.CElem.item(CElem.java:116) > org.basex.query.expr.CElem.item(CElem.java:1) > org.basex.query.expr.CFrag.item(CFrag.java:1) > org.basex.query.expr.ParseExpr.iter(ParseExpr.java:52) > org.basex.query.QueryContext.iter(QueryContext.java:329) > org.basex.query.expr.Constr.<init>(Constr.java:54) > org.basex.query.expr.CElem.item(CElem.java:116) > org.basex.query.expr.CElem.item(CElem.java:1) > org.basex.query.expr.CFrag.item(CFrag.java:1) > org.basex.query.expr.ParseExpr.iter(ParseExpr.java:52) > org.basex.query.QueryContext.iter(QueryContext.java:329) > org.basex.query.QueryContext.iter(QueryContext.java:294) > org.basex.query.QueryContext.eval(QueryContext.java:254) > org.basex.query.QueryProcessor.execute(QueryProcessor.java:113) > org.basex.core.cmd.AQuery.query(AQuery.java:83) > org.basex.core.cmd.XQuery.run(XQuery.java:22) > org.basex.core.Command.run(Command.java:292) > org.basex.core.Command.exec(Command.java:274) > org.basex.core.Command.execute(Command.java:67) > org.basex.gui.GUI.exec(GUI.java:390) > org.basex.gui.GUI$5.run(GUI.java:351) > > > > > > _______________________________________________ > BaseX-Talk mailing list > BaseX-Talk at mailman.uni-konstanz.de > https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk >
DP
Hi Xavier,
Christian forwarded me your query. We'll fix the bug, but what you are trying to do is unfortunately not supported by XQuery: the wildcards option does not mean that you can use full-blown regular expressions (POSIX, Perl, etc.): http://www.w3.org/TR/xpath-full-text-10/#ftwildcardoption
However, you can try to re-write your query using the distance option: http://www.w3.org/TR/xpath-full-text-10/#ftdistance but I'm not 100% sure if that's appropriate in your case.
Best regards,
Dimitar
Quoted text · 18:16:08 · 63 lines
Am Mittwoch 13 April 2011, 18:16:08 schrieb xavier-laurent salvador: > Hi, > here is a feedback for a "possible bug". I was trying to ft:mark with a > "\s" wildcard. Hope I helped, > > Version: BaseX 6.6.1 > Java: Sun Microsystems Inc., 1.6.0_18 > OS: Linux, i386 > Stack Trace: > java.lang.NegativeArraySizeException > org.basex.util.ft.WesternTokenizer.orig(WesternTokenizer.java:201) > org.basex.util.ft.WesternTokenizer.get(WesternTokenizer.java:187) > > org.basex.util.ft.WesternTokenizer.nextToken(WesternTokenizer.java:113) > org.basex.util.ft.FTLexer.nextToken(FTLexer.java:116) > org.basex.query.ft.FTTokenizer.cache(FTTokenizer.java:105) > org.basex.query.ft.FTWords.contains(FTWords.java:208) > org.basex.query.ft.FTWords.item(FTWords.java:130) > org.basex.query.ft.FTContains.item(FTContains.java:75) > org.basex.query.ft.FTContains.item(FTContains.java:1) > org.basex.query.expr.ParseExpr.ebv(ParseExpr.java:85) > org.basex.query.expr.ParseExpr.test(ParseExpr.java:98) > org.basex.query.expr.Preds.preds(Preds.java:99) > org.basex.query.path.IterStep$1.next(IterStep.java:49) > org.basex.query.iter.NodeIter.next(NodeIter.java:1) > org.basex.query.path.IterPath$1.next(IterPath.java:67) > org.basex.query.iter.NodeIter.next(NodeIter.java:1) > org.basex.query.func.FNFt$1.next(FNFt.java:97) > org.basex.query.iter.Iter.finish(Iter.java:65) > org.basex.query.expr.ParseExpr.value(ParseExpr.java:76) > org.basex.query.expr.Let$1.next(Let.java:94) > org.basex.query.expr.FLWR$1.next(FLWR.java:62) > org.basex.query.expr.Constr.<init>(Constr.java:55) > org.basex.query.expr.CElem.item(CElem.java:116) > org.basex.query.expr.CElem.item(CElem.java:1) > org.basex.query.expr.CFrag.item(CFrag.java:1) > org.basex.query.expr.ParseExpr.iter(ParseExpr.java:52) > org.basex.query.QueryContext.iter(QueryContext.java:329) > org.basex.query.expr.Constr.<init>(Constr.java:54) > org.basex.query.expr.CElem.item(CElem.java:116) > org.basex.query.expr.CElem.item(CElem.java:1) > org.basex.query.expr.CFrag.item(CFrag.java:1) > org.basex.query.expr.ParseExpr.iter(ParseExpr.java:52) > org.basex.query.QueryContext.iter(QueryContext.java:329) > org.basex.query.QueryContext.iter(QueryContext.java:294) > org.basex.query.QueryContext.eval(QueryContext.java:254) > org.basex.query.QueryProcessor.execute(QueryProcessor.java:113) > org.basex.core.cmd.AQuery.query(AQuery.java:83) > org.basex.core.cmd.XQuery.run(XQuery.java:22) > org.basex.core.Command.run(Command.java:292) > org.basex.core.Command.exec(Command.java:274) > org.basex.core.Command.execute(Command.java:67) > org.basex.gui.GUI.exec(GUI.java:390) > org.basex.gui.GUI$5.run(GUI.java:351) > > > > > > _______________________________________________ > BaseX-Talk mailing list > BaseX-Talk at mailman.uni-konstanz.de > https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Written for BaseX 6.6. BaseX may have changed since: please check the current documentation.
⚡Generated with XQuery