Please, take a look at the example: https://github.com/raipc/esper-join/blob/master/src/main/java/raipc/EsperJoin.java
@hint('exclude_plan(true)')
select * from A#keepall as a
left outer join B#keepall as b on a.primaryKey = b.primaryKey
left outer join C#keepall as c on a.primaryKey = c.primaryKey
The query fails with EPCompileException: Not a 3-way join
After changing the hint to 'exclude_plan(from_streamname="a" and to_streamname="b")' the exception is a bit different: EPCompileException: Error in stream 2 streamsJoinedPerStream=stream 0 : [2]
The error is reproduced with joins of 3 or more tables where left join is present