Noel, Yes - certainly the session locking (system or connection session) is one issue I have been wrestling with - especially when the CTE persistent views have to join the parent views lifecycle - I did a hacky-fix which I am not happy about to bypass that (and might not pass a code review).
If we sidestep (ignore for the time being) my hacky attempts to bypass that issue - the next stumbling block was making the persistent views truly persistent - even across database reconnections. The blocker there is in reviving the cte views from their db persisted state - which fails dismally while using the plan SQL to re-create the cte views. I have to admit I was at a loss at how to fix that, since I do not understand the mechanism in which permanent DB-objects are persisted in H2. Which classes and fields are persisted in the db across connections/db-restarts for views and tables? I am can re-open my fix branch and show what I have (test cases which fail) - but would need some guidance in the areas I am not understanding. Also I can try to integrate your meta locking detection stuff - in case this is actually part of my problem Cheers Stuart On Fri, Nov 17, 2017 at 8:22 AM, Noel Grandin <[email protected]> wrote: > Stuart, > > I have just pushed some meta-locking debug infrastructure. > > If you add the > > -Dh2.check2=true > > command line option when running H2, it will be turned on. > > The TestAll code also turns it on. > > The extra code fails nice and early when a single thread attempts to lock > the meta info using two different sessions. > > > > -- > You received this message because you are subscribed to the Google Groups > "H2 Database" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/h2-database. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "H2 Database" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/h2-database. For more options, visit https://groups.google.com/d/optout.
