Bug 1105121
| Summary: | MongoDB: Usage of lookup() function throws an exception | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [JBoss] JBoss Data Virtualization 6 | Reporter: | Filip Elias <felias> | ||||
| Component: | Teiid | Assignee: | Van Halbert <vhalbert> | ||||
| Status: | CLOSED CURRENTRELEASE | QA Contact: | |||||
| Severity: | high | Docs Contact: | |||||
| Priority: | high | ||||||
| Version: | 6.0.0 | CC: | atangrin, dlesage, vhalbert | ||||
| Target Milestone: | ER1 | Keywords: | QA-Closed | ||||
| Target Release: | 6.1.0 | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: |
Exceptions occurred when the lookup() function was used in an SQL query on MongoDB. The error is now caught in earlier versions of MongoDB and in version 2.6 onwards, the result is displayed.
|
Story Points: | --- | ||||
| Clone Of: | Environment: |
DV6 + rollup
|
|||||
| Last Closed: | 2016-02-10 08:49:31 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
Created attachment 902527 [details]
Server log with the exception
Ramesh Reddy <rareddy> updated the status of jira TEIID-2990 to Resolved Steven Hawkins <shawkins> updated the status of jira TEIID-2990 to Closed |
Exception[1] is thrown when function lookup() is used in SQL query. Mongo translator doesn't support selection of constants only(select 1, select 'hi' from smalla), which causes the exception. [1] 3:59:20,997 ERROR [org.teiid.CONNECTOR] (Worker5_QueryProcessorQueue6) Connector worker process failed for atomic-request=Ef2Z7E0246by.1.5.3: com.mongodb.CommandFailureException: { "serverUsed" : "localhost/127.0.0.1:27017" , "errmsg" : "exception: $projection requires at least one output field" , "code" : 16403 , "ok" : 0.0} at com.mongodb.CommandResult.getException(CommandResult.java:71) Server log is in the attachment. Sample query: SELECT BQT1.SmallA.IntKey FROM BQT1.SmallA, BQT1.SmallB WHERE BQT1.SmallA.IntKey= lookup('BQT1.SmallB', 'IntKey', 'StringKey', BQT1.SmallA.StringKey) ORDER BY IntKey Generated mongo commands: { aggregate: "smalla", pipeline: [ { $project: { _m0: "$INTKEY", _m1: "$STRINGKEY" } } ] } and { aggregate: "smallb", pipeline: [ { $project: {} } ] }