[teiid-issues] [JBoss JIRA] (TEIID-2988) MongoDB: Function substring - starting index and number of arguments

RH Bugzilla Integration (JIRA) issues at jboss.org
Mon Jun 23 09:38:27 EDT 2014


    [ https://issues.jboss.org/browse/TEIID-2988?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12978596#comment-12978596 ] 

RH Bugzilla Integration commented on TEIID-2988:
------------------------------------------------

Van Halbert <vhalbert at redhat.com> changed the Status of [bug 1105101|https://bugzilla.redhat.com/show_bug.cgi?id=1105101] from NEW to MODIFIED

> MongoDB: Function substring - starting index and number of arguments
> --------------------------------------------------------------------
>
>                 Key: TEIID-2988
>                 URL: https://issues.jboss.org/browse/TEIID-2988
>             Project: Teiid
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Misc. Connectors
>    Affects Versions: 8.4.1
>            Reporter: Filip Elias
>            Assignee: Ramesh Reddy
>              Labels: Beta1
>             Fix For: 8.7.1, 8.8
>
>
> Two minor bugs in function substring()
> Mongo's function $substr takes only 3 arguments so this query fails:
> {code}
> SELECT intkey, SUBSTRING(BQT1.SmallA.stringkey, 1) FROM BQT1.SmallA ORDER BY intkey
> {code}
> {code}
> Exception:13:18:48,220 ERROR [org.teiid.CONNECTOR] (Worker38_QueryProcessorQueue345) Connector worker process failed for atomic-request=omsmHP0o16Sa.40.0.86: com.mongodb.CommandFailureException: { "serverUsed" : "localhost/127.0.0.1:27017" , "errmsg" : "exception: the $substr operator requires 3 operand(s)" , "code" : 16020 , "ok" : 0.0}
> 	at com.mongodb.CommandResult.getException(CommandResult.java:71)
> 	at com.mongodb.CommandResult.throwOnError(CommandResult.java:110)
> 	at com.mongodb.DBCollection.aggregate(DBCollection.java:1308)
> {code}
> Generated mongo command: 
> {code}
> { aggregate: "smalla", pipeline: [ { $project: { c_0: "$INTKEY", c_1: { $substr: [ "$STRINGKEY", 1 ] } } }, { $sort: { c_0: 1 } } ] }
> {code}
> Mongo's $substr function second argument represents number of bytes to skip, not the starting index. The function substring(StringKey,1,1) returns the second letter, but it should return the first letter.



--
This message was sent by Atlassian JIRA
(v6.2.6#6264)


More information about the teiid-issues mailing list