[
https://issues.apache.org/jira/browse/ASTERIXDB-1877?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Taewoo Kim closed ASTERIXDB-1877.
---------------------------------
Resolution: Fixed
> Full-text search throw exception
> --------------------------------
>
> Key: ASTERIXDB-1877
> URL: https://issues.apache.org/jira/browse/ASTERIXDB-1877
> Project: Apache AsterixDB
> Issue Type: Bug
> Environment: master:
> {"git.tags":"","git.build.version":"0.9.1-SNAPSHOT","git.closest.tag.commit.count":"175","git.commit.id.abbrev":"39d09a0"
> ... }
> Reporter: Jianfeng Jia
> Assignee: Taewoo Kim
>
> Use the latest AsterixDB, run the cloudberry ingestion
> [script|https://github.com/JavierJia/cloudberry/blob/full-text/script/ingestTwitterToLocalCluster.sh].
>
> Only the following query works
> {code}
> for $t in dataset twitter.ds_tweet
> where ftcontains($t.'text', ['zika','virus'], {'mode':'all'})
> let $taggr := $t
> group by $g0 := get-interval-start-datetime(interval-bin($t.'create_at',
> datetime('1990-01-01T00:00:00.000Z'), day-time-duration("PT1H") )) with
> $taggr
> return {
> 'hour' : $g0,'count' : count($taggr)
> }
> {code}
> These queries will throw exceptions
> {code}
> for $t in dataset twitter.ds_tweet
> where ftcontains($t.'text', ['zika'], {'mode':'all'})
> let $taggr := $t
> group by $g0 := get-interval-start-datetime(interval-bin($t.'create_at',
> datetime('1990-01-01T00:00:00.000Z'), day-time-duration("PT1H") )) with
> $taggr
> return {
> 'hour' : $g0,'count' : count($taggr)
> }
> {code}
> {code}
> for $t in dataset twitter.ds_tweet
> where ftcontains($t.'text', 'zika')
> let $taggr := $t
> group by $g0 := get-interval-start-datetime(interval-bin($t.'create_at',
> datetime('1990-01-01T00:00:00.000Z'), day-time-duration("PT1H") )) with
> $taggr
> return {
> 'hour' : $g0,'count' : count($taggr)
> }
> {code}
> {code}
> for $t in dataset twitter.ds_tweet
> where ftcontains($t.'text', ['happy','day'])
> let $taggr := $t
> group by $g0 := get-interval-start-datetime(interval-bin($t.'create_at',
> datetime('1990-01-01T00:00:00.000Z'), day-time-duration("PT1H") )) with
> $taggr
> return {
> 'hour' : $g0,'count' : count($taggr)
> }
> {code}
> Exception :
> {code}
> Caused by: java.lang.IllegalArgumentException
> at
> org.apache.hyracks.util.string.UTF8StringUtil.charAt(UTF8StringUtil.java:60)
> at
> org.apache.hyracks.storage.am.lsm.invertedindex.tokenizers.DelimitedUTF8StringBinaryTokenizer.hasNext(DelimitedUTF8StringBinaryTokenizer.java:48)
> at
> org.apache.asterix.runtime.evaluators.common.FullTextContainsEvaluator$_EvaluatorGen.readLeftAndConductSearch(FullTextContainsEvaluator.java:358)
> at
> org.apache.asterix.runtime.evaluators.common.FullTextContainsEvaluator$_EvaluatorGen.fullTextContainsWithArg(FullTextContainsEvaluator.java:200)
> at
> org.apache.asterix.runtime.evaluators.common.FullTextContainsEvaluator$_EvaluatorGen.evaluate(FullTextContainsEvaluator.java:158)
> at
> org.apache.hyracks.algebricks.runtime.operators.std.StreamSelectRuntimeFactory$1.nextFrame(StreamSelectRuntimeFactory.java:133)
> at
> org.apache.hyracks.dataflow.common.comm.io.AbstractFrameAppender.write(AbstractFrameAppender.java:92)
> at
> org.apache.hyracks.dataflow.common.comm.util.FrameUtils.appendProjectionToWriter(FrameUtils.java:235)
> at
> org.apache.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.appendProjectionToFrame(AbstractOneInputOneOutputOneFramePushRuntime.java:98)
> at
> org.apache.hyracks.algebricks.runtime.operators.base.AbstractOneInputOneOutputOneFramePushRuntime.appendProjectionToFrame(AbstractOneInputOneOutputOneFramePushRuntime.java:93)
> at
> org.apache.hyracks.algebricks.runtime.operators.std.StreamProjectRuntimeFactory$1.nextFrame(StreamProjectRuntimeFactory.java:74)
> at
> org.apache.hyracks.algebricks.runtime.operators.meta.AlgebricksMetaOperatorDescriptor$2.nextFrame(AlgebricksMetaOperatorDescriptor.java:134)
> at
> org.apache.hyracks.dataflow.common.comm.io.AbstractFrameAppender.write(AbstractFrameAppender.java:92)
> at
> org.apache.hyracks.storage.am.common.dataflow.IndexSearchOperatorNodePushable.close(IndexSearchOperatorNodePushable.java:204)
> ... 10 more
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)