I have a graph that is very similar to one of the simple examples.
I have a Universal Data Read that reads a file of ID, NAME (driver).
I have a DBInputTable that reads a table of ID, NAME (slave).
My Ext Hash Join is configured to do a left outer join…the doc says: “processes driver records with missing slaves.”
What I find is that even though the table is exactly in sync with the file, I get all records output from the Ext Hash Join component. I am expecting 0 records output since there is a matching slave record for every driver record.
Originally found in 2.5.0, but I have just downloaded 2.5.1 and the problem is still there.
Hello,
ExtHashJoin always joins records with the same key, leftOuterJoin means that there are processed not only records with the same key, but the records from master port without corresponding slave too. If you want to find different records use DataIntersection or CheckForeignKey component.
For people new to CloverETL, something that would help would be a “cookbook” of solutions for common problems. Needing to generate keys for new data has to be a common thing. And there are many more, I’m sure.
Maybe create a forum just for cookbook items, rather than doing a doc for it.
Just a thought…
Great idea about the “cookbook” - I have created a forum for that