Hello all together,
I use the Script, DeleteDbFiles, RunScript approach to manually "compact"
my database and noticed a problem during a test run after integrating this
pattern (although it worked several times without a problem). The creation
of the dump file had produced no errors
29.11.2012 21:58:00.655 [MessagePersistance Thread] ERROR
n.l.d.d.i.h.i.ManualCompactInterceptor - Caught exception
org.h2.jdbc.JdbcSQLException: Table "AL" not found; SQL statement:
ALTER TABLE PUBLIC.AL [42102-168]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
~[h2-1.3.168.jar:1.3.168]
at org.h2.message.DbException.get(DbException.java:169)
~[h2-1.3.168.jar:1.3.168]
at org.h2.message.DbException.get(DbException.java:146)
~[h2-1.3.168.jar:1.3.168]
at org.h2.schema.Schema.getTableOrView(Schema.java:413)
~[h2-1.3.168.jar:1.3.168]
at org.h2.command.Parser.readTableOrView(Parser.java:4754)
~[h2-1.3.168.jar:1.3.168]
at org.h2.command.Parser.readTableOrView(Parser.java:4748)
~[h2-1.3.168.jar:1.3.168]
at org.h2.command.Parser.parseAlterTable(Parser.java:4821)
~[h2-1.3.168.jar:1.3.168]
...
The tablename should be ALARMSTATES or ALARMSEQUENCE, but it definitely
wasn't AL.
29.11.2012 21:58:25.011 [MessagePersistance Thread] ERROR
n.l.d.d.i.h.i.ManualCompactInterceptor - Caught exception
org.h2.jdbc.JdbcSQLException: Sequence "SYSTEM_SEQUENCE_0C1DFB30_818D_4"
not found; SQL statement:
-- 0 +/- SELECT COUNT(*) FROM PUBLIC.ALARMSEQUENCE;
CREATE CACHED TABLE PUBLIC.ALARMNOTIFICATIONSTATES(
_ID BIGINT DEFAULT (NEXT VALUE FOR
PUBLIC.SYSTEM_SEQUENCE_0C1DFB30_818D_4 [90036-168]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
~[h2-1.3.168.jar:1.3.168]
at org.h2.message.DbException.get(DbException.java:169)
~[h2-1.3.168.jar:1.3.168]
at org.h2.message.DbException.get(DbException.java:146)
~[h2-1.3.168.jar:1.3.168]
at org.h2.schema.Schema.getSequence(Schema.java:474)
~[h2-1.3.168.jar:1.3.168]
...
again whats this?
29.11.2012 21:58:50.173 [MessagePersistance Thread] ERROR
n.l.d.d.i.h.i.ManualCompactInterceptor - Caught exception
org.h2.jdbc.JdbcSQLException: Unknown data type: "TIMESTA"; SQL statement:
CREATE CACHED TABLE PUBLIC.ALARMSEQUENCE(
_ID BIGINT DEFAULT (NEXT VALUE FOR
PUBLIC.SYSTEM_SEQUENCE_3DA1A593_2086_4A00_B117_F0FCE93AC4A9) NOT NULL
NULL_TO_DEFAULT SEQUENCE
PUBLIC.SYSTEM_SEQUENCE_3DA1A593_2086_4A00_B117_F0FCE93AC4A9,
GENID VARCHAR(255) NOT NULL,
ALARMUUID UUID,
RELEASEDSINCE TIMESTA [50004-168]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
~[h2-1.3.168.jar:1.3.168]
at org.h2.message.DbException.get(DbException.java:169)
~[h2-1.3.168.jar:1.3.168]
at org.h2.message.DbException.get(DbException.java:146)
~[h2-1.3.168.jar:1.3.168]
at org.h2.command.Parser.parseColumnWithType(Parser.java:3654)
~[h2-1.3.168.jar:1.3.168]
at org.h2.command.Parser.parseColumnForTable(Parser.java:3517)
~[h2-1.3.168.jar:1.3.168]
...
truncation again.
29.11.2012 22:01:45.992 [MessagePersistance Thread] ERROR
n.l.d.d.i.h.i.ManualCompactInterceptor - Caught exception
org.h2.jdbc.JdbcSQLException: Syntax error in SQL statement "
INSERT INTO PUBLIC.UPLOADSTATES(_ID, INPROGRESS, MESSAGEID, STAMP) VALUES
(16790, FALSE, 16790, NULL),
(16791, FALSE, 16791, NULL),
(16792, FALSE, 16792, NULL),
(16793, FALSE, 16793, NULL),
(16794, FALSE, 16794, NULL),
(16795, FALSE, 16795, NULL),
(16796, FALSE, 16796, NULL),
...
(16875, FALSE, 16875, NULL),
(16876, FALSE, 16876, N"; expected "., (, [, ::, *, /, %, +, -, ||, ~, !~,
NOT, LIKE, REGEXP, IS, IN, BETWEEN, AND, OR, ,, )"; SQL statement:
truncated ...
(20879, FALSE, 20879, NULL),
(20880, FALSE, 20880, NULL),
(2088"; expected "[, ::, *, /, %, +, -, ||, ~, !~, NOT, LIKE, REGEXP, IS,
IN, BETWEEN, AND, OR, ,, )"; SQL statement:
same ...
(19700, FALSE, 19700, NULL),
(19701, FALSE, 1 [42001-168]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
~[h2-1.3.168.jar:1.3.168]
at org.h2.message.DbException.get(DbException.java:169)
~[h2-1.3.168.jar:1.3.168]
and again and again.
Any idea how that could happen? Unfortunately the dump file got deleted
after this. Creation happened with:
Script.execute(url, user, password, pathToDump);
Creation did not produce any exceptions ...
Was there something like that fixed already? I will make another test run
today with 1.3.170 and without deletion of the dump.
--
Jens Gutzeit
--
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.