Here is a simple illustration of how the inner portion of a join will actually turn into a cartesion join (cross product) on any selected fields not taken care of in the join conditions. The example has two small data sources of 3 fields and 4 rows each; these are joined on two of the fields, and all outputs are selected. The "Left" and "Right" portions are as expected, but the "inner section" turns into a mess of numerous rows.
This may be obvious to anyone who has written a lot of joins (e.g. in SQL maybe), but the point is that these concerns remain very real even when using a tool that manages so many other concerns.
In short - make sure that row counts coming out of a join are exactly as expected. If they aren't, there is probably something of this nature taking place, and it is probably not good. In this example, it's trivial to see, but this example is based upon review of a "real" workflow containing a similar situation that would have been missed had the row counts gone unquestioned.
