Hi,
I've an embedded database that take few seconds (<30s) to open.
At some point in time this change upto 100- 300 seconds to open and now I'm 
trying to find what's the change in database introduce this problem.
Above is the profiler output from console connection test, where I can see two 
UDF that use recursive queries taking 11% of start time (if I understand well).

This UDFs on this database was used as a work-around to CREATE VIEWs that use 
recursive queries.
Then I drop that UDFs and strat time goes bellow 30 secs. again.
 
I'll try to reproduce it in a test case.
regards,
Dario.

Profiler: top 3 stack trace(s) of 274804 ms [build-153]:
14751/31082 (47%):
at sun.awt.X11.XToolkit.waitForEvents(Native Method)
at sun.awt.X11.XToolkit.run(XToolkit.java:579)
at sun.awt.X11.XToolkit.run(XToolkit.java:543)
at java.lang.Thread.run(Thread.java:662)
3643/31082 (11%):
at org.h2.index.IndexCursor.next(IndexCursor.java:235)
at org.h2.table.TableFilter.next(TableFilter.java:352)
at org.h2.table.TableFilter.next(TableFilter.java:333)
at org.h2.command.dml.Select.queryFlat(Select.java:513)
at org.h2.command.dml.Select.queryWithoutCache(Select.java:614)
at org.h2.command.dml.Query.query(Query.java:269)
at org.h2.command.dml.Query.query(Query.java:239)
at org.h2.index.ViewIndex.find(ViewIndex.java:185)
at org.h2.index.BaseIndex.find(BaseIndex.java:99)
at org.h2.index.IndexCursor.find(IndexCursor.java:145)
at org.h2.table.TableFilter.next(TableFilter.java:321)
at org.h2.command.dml.Select.queryFlat(Select.java:513)
at org.h2.command.dml.Select.queryWithoutCache(Select.java:614)
at org.h2.command.dml.Query.query(Query.java:269)
at org.h2.command.dml.Query.query(Query.java:239)
at org.h2.command.dml.Query.query(Query.java:37)
at org.h2.command.CommandContainer.query(CommandContainer.java:78)
at org.h2.command.Command.executeQuery(Command.java:181)
at org.h2.jdbc.JdbcStatement.executeQuery(JdbcStatement.java:76)
at org.h2.dynamic.FUNCT_HIERARCHY.functHierarchy(FUNCT_HIERARCHY.java:8)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.h2.engine.FunctionAlias$JavaMethod.getValue(FunctionAlias.java:393)
at org.h2.expression.JavaFunction.getValueForColumnList(JavaFunction.java:116)
at org.h2.table.FunctionTable.<init>(FunctionTable.java:63)
at org.h2.command.Parser.readTableFilter(Parser.java:1038)
at org.h2.command.Parser.parseSelectSimpleFromPart(Parser.java:1645)
at org.h2.command.Parser.parseSelectSimple(Parser.java:1752)
at org.h2.command.Parser.parseSelectSub(Parser.java:1639)
at org.h2.command.Parser.parseSelectUnion(Parser.java:1484)
3544/31082 (11%):
at org.h2.index.IndexCursor.next(IndexCursor.java:235)
at org.h2.table.TableFilter.next(TableFilter.java:352)
at org.h2.table.TableFilter.next(TableFilter.java:333)
at org.h2.command.dml.Select.queryFlat(Select.java:513)
at org.h2.command.dml.Select.queryWithoutCache(Select.java:614)
at org.h2.command.dml.Query.query(Query.java:269)
at org.h2.command.dml.Query.query(Query.java:239)
at org.h2.index.ViewIndex.find(ViewIndex.java:185)
at org.h2.index.BaseIndex.find(BaseIndex.java:99)
at org.h2.index.IndexCursor.find(IndexCursor.java:145)
at org.h2.table.TableFilter.next(TableFilter.java:321)
at org.h2.command.dml.Select.queryFlat(Select.java:513)
at org.h2.command.dml.Select.queryWithoutCache(Select.java:614)
at org.h2.command.dml.Query.query(Query.java:269)
at org.h2.command.dml.Query.query(Query.java:239)
at org.h2.command.dml.Query.query(Query.java:37)
at org.h2.command.CommandContainer.query(CommandContainer.java:78)
at org.h2.command.Command.executeQuery(Command.java:181)
at org.h2.jdbc.JdbcStatement.executeQuery(JdbcStatement.java:76)
at org.h2.dynamic.ADMIN_HIERARCHY.adminHierarchy(ADMIN_HIERARCHY.java:8)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.h2.engine.FunctionAlias$JavaMethod.getValue(FunctionAlias.java:393)
at org.h2.expression.JavaFunction.getValueForColumnList(JavaFunction.java:116)
at org.h2.table.FunctionTable.<init>(FunctionTable.java:63)
at org.h2.command.Parser.readTableFilter(Parser.java:1038)
at org.h2.command.Parser.parseSelectSimpleFromPart(Parser.java:1645)
at org.h2.command.Parser.parseSelectSimple(Parser.java:1752)
at org.h2.command.Parser.parseSelectSub(Parser.java:1639)
at org.h2.command.Parser.parseSelectUnion(Parser.java:1484)
packages:
27%: org.h2.index
10%: org.h2.util
7%: org.h2.value
.
Profiler: top 3 stack trace(s) of 12 ms [build-153]:
1/1 (100%):
at sun.awt.X11.XToolkit.waitForEvents(Native Method)
at sun.awt.X11.XToolkit.run(XToolkit.java:579)
at sun.awt.X11.XToolkit.run(XToolkit.java:543)
at java.lang.Thread.run(Thread.java:662)
packages:

-- 
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/h2-database?hl=en.

Reply via email to