I tried to execute you test and I have a the following stackoverflow
java.lang.StackOverflowError
at org.h2.command.Parser.readTermObjectDot(Parser.java:4834)
at org.h2.command.Parser.readTermWithIdentifier(Parser.java:5213)
at org.h2.command.Parser.readTerm(Parser.java:4901)
at org.h2.command.Parser.readFactor(Parser.java:3398)
at org.h2.command.Parser.readSum(Parser.java:3385)
at org.h2.command.Parser.readConcat(Parser.java:3350)
at org.h2.command.Parser.readCondition(Parser.java:3132)
at org.h2.command.Parser.readExpression(Parser.java:3053)
at org.h2.command.Parser.parseSelectExpressions(Parser.java:2853)
at org.h2.command.Parser.parseSelect(Parser.java:2871)
at org.h2.command.Parser.parseQueryPrimary(Parser.java:2762)
at org.h2.command.Parser.parseQueryTerm(Parser.java:2633)
at org.h2.command.Parser.parseQueryExpressionBody(Parser.java:2612)
at org.h2.command.Parser.parseQueryExpressionBodyAndEndOfQuery(Parser.java:2605)
at org.h2.command.Parser.parseQueryExpression(Parser.java:2598)
at org.h2.command.Parser.parseQuery(Parser.java:2567)
at org.h2.command.Parser.parsePrepared(Parser.java:724)
at org.h2.command.Parser.parse(Parser.java:689)
at org.h2.command.Parser.parse(Parser.java:661)
at org.h2.command.Parser.prepareCommand(Parser.java:569)
at org.h2.engine.SessionLocal.prepareLocal(SessionLocal.java:631)
at org.h2.engine.SessionLocal.prepareCommand(SessionLocal.java:554)
at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1116)
at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:92)
that is happening also in 5.5.8 and 5.6.
My suggestion is not to use the Eager fetch for the parent.