[
https://issues.jboss.org/browse/TEIID-2845?page=com.atlassian.jira.plugin...
]
Ramesh Reddy resolved TEIID-2845.
---------------------------------
Labels: alpha3 mongodb (was: mongodb)
Resolution: Done
The $unwind operator behavior was wrongly assumed, where the empty child documents did not
produce any documents, so all joins were behaving as INNER joins. See related discussion
on it
https://groups.google.com/forum/#!topic/mongodb-user/UKYPddRN37E
Used the workaround mentioned on this thread, so that Teiid can generate
* INNER JOIN
* LEFT [OUTER] JOIN (left is assumed to be the parent document)
* CROSS JOIN will be handled by the Teiid engine, as the JOIN capabilities define they
only work on KEY based.
* RIGHT OUTER JOIN either re-written based on which side is parent, otherwise this JOIN
produces an exception. One possibility is to extend the "allow-join" semantics
to define such that "RIGHT JOIN" is not supported, in which case it can be
handled in Teiid query engine.
MongoDB: Join processing produces wrong results in some cases
-------------------------------------------------------------
Key: TEIID-2845
URL:
https://issues.jboss.org/browse/TEIID-2845
Project: Teiid
Issue Type: Bug
Components: Misc. Connectors
Affects Versions: 8.4
Reporter: Ramesh Reddy
Assignee: Ramesh Reddy
Labels: mongodb, alpha3
Fix For: 8.7
When two or more tables are used to build single document in the MongoDB, depending upon
the JOIN query used it may produce wrong results.
- support for inner is not turned ON, this should be allowed
- For example cross-join between parent and embedded table
- right-join between parent and embedded table
- depending upon the parent the ordering of left and right join
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira