Hello, Just to be sure, you removed a lot of query parts in your listing, right? I only see the tables, not the bind variables, for instance...
What's going on here: *causeStart() / clauseEnd() *events indicate that a certain "Clause" is starting / ending. A "Clause" is an artificial marker in jOOQ's AST transformation that is used to help identify individual SQL AST elements that are not directly represented by a QueryPart. For instance, the whole SELECT statement is a QueryPart, but the SELECT statement has a SELECT clause, a FROM clause, a WHERE clause, a GROUP BY clause, etc. If you could only listen to "QueryPart" events, it would be hard to distinguish between predicates / conditions from the WHERE clause or the HAVING clause, for instance. In jOOQ 4.0, we might replace these clauses by actual query parts that model the respective clauses, but we're not sure about the exact design for this, yet. *visitStart() / visitEnd()* events simply indicate that a given QueryPart is about to be rendered to the SQL output (or its bind variables extracted). A high-level outline of a cache invalidation algorithm via VisitListener would include: - Listen to visitStart() events that involve org.jooq.Table - Check to see if you're "inside" of the INSERT_INSERT_INTO clause (as opposed to, perhaps, a table that is generated for a subquery inside of the INSERT_VALUES or INSERT_SELECT clause) - If applicable, invalidate your cache through your own signalling (see suggestions from my previous E-Mail: e.g. via ThreadLocal) I hope this helps, Cheers Lukas 2015-06-16 1:26 GMT+02:00 <[email protected]>: > Also, this is from a visitEnd() repeated call. > > -- > You received this message because you are subscribed to the Google Groups > "jOOQ User Group" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "jOOQ User Group" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
