Thanks for the analyse.
In the log file related to the DB with the issue, I found :
INFO | jvm 1| 2012/02/05 19:12:14 | 2012/02/05 19:12:14 ERROR
[aseWorkerThread-cockpitDB] mserver.H2Listener - [DATABASE]
exceptionThrown sql=UPDATE MCTASK SET
Hi,
I added TRACE_LEVEL_FILE=3 during shutdown compact and added result in
attachment.
This will not really help much. It shows the database shrunk, that's
it. It doesn't say why the database was big.
Could you send me (or upload somewhere) the large database, or run the
Recover tool on a
Hi,
I have downloaded the file now and ran the Recover tool. The database
file is 3 GB, and the cockpit.h2.sql file is 9 GB. The end (tail) of
the .h2.sql script is:
Statistics
-- page count: 1552048, free: 24350
-- page data bytes: head 486669, empty 15198569, rows 8567178 (38% full)
Hi
OK, so it turns out my original idea was a bad one.
Because of the way the locking works, it is not possible to display that
information in the sessions table.
However, using JMX works. The attached patch correctly display ongoing
transactions using the H2 JMX facility.
See the unit-test
Any news regarding my issue?
The last status was:
- command compact works but closes all current connection
- I tried TRANSACTION_TIMEOUT = 33554432 but I have issue.
- I tried code with TRANSACTION_START but WHERE TRANSACTION_START IS
NOT NULL returns nothing.
On 23 fév, 10:56, IntensiveH2
Hi,
I tried your proposal but I have the issue below (with public long
transactionTimeout = 33554432):
INFO | jvm 1| 2012/02/23 08:54:21 | WrapperManager Error: Error
in WrapperListener.start callback. java.lang.StackOverflowError
INFO | jvm 1| 2012/02/23 08:54:21 | WrapperManager
Hi,
I tested the compact command.
I have no issue regarding corruption but I need time to perform
additional validations.
But compact command closed all opened connection and if you have a
pool of connection, it's a problem
The error message is:
org.h2.jdbc.JdbcSQLException: Database is already
Also, another information.
I added DEFRAG_ALWAYS=TRUE and now when I shutdow compact the
database, I have the following error:
first time
java.lang.RuntimeException: Undo entry not written
at org.h2.message.DbException.throwInternalError(DbException.java:
228)
at
Hi
In order to monitor for bad transactions, how about we add a
TRANSACTION_START column to the SESSIONS meta-table?
Regards, Noel Grandin
On 2012-02-18 09:27, Thomas Mueller wrote:
Hi,
Can I add some debug settings on customer side?
There are two options:
- Use the trace options to
It should be useful to add this kind of information as JMX operation
(like list sessions).
On 20 fév, 10:59, Noel Grandin noelgran...@gmail.com wrote:
Hi
In order to monitor for bad transactions, how about we add a
TRANSACTION_START column to the SESSIONS meta-table?
Regards, Noel Grandin
For information
My connection string is:
jdbc:h2:file:D:\ProductDev\cockpitconsole\build\projects\mserver\dist
\h2\cockpit
\cockpit;MVCC=TRUE;AUTOCOMMIT=OFF;LOCK_MODE=3;LOG=2;CACHE_TYPE=SOFT_LRU
I change also some settings like:
statement.execute(set WRITE_DELAY 0);
statement.execute(SET
Make sure you can build and test the H2 source code locally, and I'll
make you a patch tomorrow for displaying the transaction start time in
the SESSIONS table.
Then you can log the output of that table regularly to see who the culprit is.
On Mon, Feb 20, 2012 at 18:16, IntensiveH2
Please, can you send me directly the jar file also. I don't have the
build environment yet.
On 20 fév, 17:25, Noel Grandin noelgran...@gmail.com wrote:
Make sure you can build and test the H2 source code locally, and I'll
make you a patch tomorrow for displaying the transaction start time in
Hi,
If you want, I have some code that could be used as a starting point.
It's work in progress.
Warning: I havent test it; I didn't run it at all. It could be
completely wrong, and possibly corrupt the database. Also, the term
TRANSACTION_TIMEOUT is misleading and has to be changed (it should
Hi,
Can I add some debug settings on customer side?
There are two options:
- Use the trace options to analyze the JDBC method calls (append
;TRACE_LEVEL_FILE=3 to the database URL)
- Use the Recover tool to find out if there are uncommitted
transactions in the (large) database file (or a copy
I have a related question:
Triggered by this request I tried what happens if I execute shutdown
compact but do not close my connection-pool as well and as one
could have expected the database was reopened at the first query after
the shutdown without a problem. I also tried starting a new
Hi,
It is possible, based on this huge DB, to see if some transaction are
not commited (I have the DB of 12GB)?
Can I add some debug settings on customer side?
Thanks.
On 16 fév, 10:44, Thomas Mueller thomas.tom.muel...@gmail.com wrote:
Hi,
I would first analyze why it grows so much.
Hi,
I use H2 in a commercial product and I have an issue regarding the
size of the DB (with a customer).
Currently the DB size is 12 GB and after a shutdown compact/restart
the new size is 800 MB
When you start connection on DB (12 GB) it took around 70 minutes to
start (on solaris) before to
Not sure what Thomas' plans are,
but what I can suggest is that you set this setting to a nice large number
-Dh2.maxCompactTime=6
And reboot your application on a regular basis.
See here
http://www.h2database.com/html/grammar.html#shutdown
which sets the maximum time to compact the database
If you want to look at it yourself, the relevant code is in
org.h2.store.PageStore#compact(int)
On 2012-02-15 11:51, IntensiveH2 wrote:
Thanks for the quick answer but currently it's not possible to reboot
my application on a regular basis because my application must ensure
scheduling,
Hi
I had a quick bash at implementing this by taking an exclusive lock on
the DB and re-using the existing compacting code.
So I added a
COMPACT
command.
But the unit test I added indicates that I'm corrupting the database
somehow.
Patch attached - Thomas, perhaps you have an idea?
Hi
Thanks for your patch but customer is on production and I must to have
a robust solution.
Could you send me a jar file instead of a patch file (It's more easy
and especially faster for me to validate it).
When do you have a reliable solution (related to your previous comment
that I'm
22 matches
Mail list logo