Moin,
habe folgende Fehlermeldung wenn CCU-Historian aufgerufen wird.
Unter Details ist folgendes gelistet:
org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "DATA_POINTS" already exists; SQL statement:
CREATE TABLE DATA_POINTS (
DP_ID INT IDENTITY, TABLE_NAME VARCHAR NOT NULL,
STATE INT,
INTERFACE VARCHAR NOT NULL, ADDRESS VARCHAR NOT NULL,
IDENTIFIER VARCHAR NOT NULL,
PREPROC_TYPE INT, PREPROC_PARAM DOUBLE,
DISPLAY_NAME VARCHAR, ROOM VARCHAR, FUNCTION VARCHAR, COMMENT VARCHAR,
CUSTOM VARCHAR DEFAULT '{}',
PARAM_SET VARCHAR, TAB_ORDER INT,
MAXIMUM DOUBLE, UNIT VARCHAR,
MINIMUM DOUBLE, CONTROL VARCHAR,
OPERATIONS INT, FLAGS INT,
TYPE VARCHAR, DEFAULT_VALUE DOUBLE
); [42101-199]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:451)
at org.h2.message.DbException.getJdbcSQLException(DbException.java:427)
at org.h2.message.DbException.get(DbException.java:205)
at org.h2.message.DbException.get(DbException.java:181)
at org.h2.command.ddl.CreateTable.update(CreateTable.java:85)
at org.h2.command.CommandContainer.update(CommandContainer.java:133)
at org.h2.command.Command.executeUpdate(Command.java:267)
at org.h2.command.CommandList.update(CommandList.java:62)
at org.h2.command.Command.executeUpdate(Command.java:267)
at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:233)
at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:205)
at mdz.ccuhistorian.Database.prepareDatabase(Database.groovy:668)
at mdz.ccuhistorian.Database.connect(Database.groovy:79)
at mdz.ccuhistorian.Database.getDataPoints(Database.groovy:236)
at mdz.ccuhistorian.ExtendedStorage.getDataPoints(ExtendedStorage.groovy:44)
at index$_run_closure2$_closure4$_closure8$_closure22.doCall(index.gy:128)
at index$_run_closure2$_closure4$_closure8$_closure22.doCall(index.gy)
at index$_run_closure2$_closure4$_closure8.doCall(index.gy:127)
at index$_run_closure2$_closure4$_closure8.doCall(index.gy)
at index$_run_closure2$_closure4.doCall(index.gy:104)
at index$_run_closure2$_closure4.doCall(index.gy)
at index$_run_closure2.doCall(index.gy:32)
at index$_run_closure2.doCall(index.gy)
at mdz.ccuhistorian.webapp.PageRenderer$_runSafe_closure2.doCall(PageRenderer.groovy:53)
at mdz.ccuhistorian.webapp.PageRenderer$_runSafe_closure2.doCall(PageRenderer.groovy)
at mdz.ccuhistorian.webapp.WebUtilities$_catchToLog_closure1.doCall(WebUtilities.groovy:83)
at mdz.ccuhistorian.webapp.WebUtilities$_catchToLog_closure1.doCall(WebUtilities.groovy)
at mdz.Exceptions.lambda$0(Exceptions.java:84)
at mdz.Exceptions.catchToLog(Exceptions.java:74)
at mdz.Exceptions.catchToLog(Exceptions.java:84)
at mdz.ccuhistorian.webapp.WebUtilities.catchToLog(WebUtilities.groovy:81)
at mdz.ccuhistorian.webapp.PageRenderer.runSafe(PageRenderer.groovy:51)
at mdz.ccuhistorian.webapp.PageRenderer.writeContent(PageRenderer.groovy:279)
at mdz.ccuhistorian.webapp.PageRenderer$_writeBody_closure6$_closure11.doCall(PageRenderer.groovy:137)
at mdz.ccuhistorian.webapp.PageRenderer$_writeBody_closure6$_closure11.doCall(PageRenderer.groovy)
at mdz.ccuhistorian.webapp.PageRenderer$_writeBody_closure6.doCall(PageRenderer.groovy:132)
at mdz.ccuhistorian.webapp.PageRenderer$_writeBody_closure6.doCall(PageRenderer.groovy)
at mdz.ccuhistorian.webapp.PageRenderer.writeBody(PageRenderer.groovy:131)
at mdz.ccuhistorian.webapp.PageRenderer$_writeDocument_closure4.doCall(PageRenderer.groovy:103)
at mdz.ccuhistorian.webapp.PageRenderer$_writeDocument_closure4.doCall(PageRenderer.groovy)
at mdz.ccuhistorian.webapp.PageRenderer.writeDocument(PageRenderer.groovy:101)
at mdz.ccuhistorian.webapp.PageRenderer$_render_closure1.doCall(PageRenderer.groovy:24)
at mdz.ccuhistorian.webapp.PageRenderer$_render_closure1.doCall(PageRenderer.groovy)
at mdz.ccuhistorian.webapp.WebUtilities$_catchToLog_closure1.doCall(WebUtilities.groovy:83)
at mdz.ccuhistorian.webapp.WebUtilities$_catchToLog_closure1.doCall(WebUtilities.groovy)
at mdz.Exceptions.lambda$0(Exceptions.java:84)
at mdz.Exceptions.catchToLog(Exceptions.java:74)
at mdz.Exceptions.catchToLog(Exceptions.java:84)
at mdz.ccuhistorian.webapp.WebUtilities.catchToLog(WebUtilities.groovy:81)
at mdz.ccuhistorian.webapp.PageRenderer.render(PageRenderer.groovy:21)
at index.run(index.gy:230)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:534)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1351)
at org.eclipse.jetty.servlets.CrossOriginFilter.handle(CrossOriginFilter.java:186)
at org.eclipse.jetty.servlets.CrossOriginFilter.doFilter(CrossOriginFilter.java:158)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:473)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:516)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:929)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:184)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:864)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
at org.eclipse.jetty.server.Server.handle(Server.java:352)
at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:596)
at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1051)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:590)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212)
at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:426)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:508)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:451)
Es lief alles bis zu einem Crash der SD Karte; nach der Wiederherstellung ist nur noch obige Fehlermeldung sichtbar.
Besten Dank und Grüße,
OTF
Fehler: Table "DATA_POINTS" already exists
Moderator: Co-Administratoren
-
- Beiträge: 1794
- Registriert: 03.11.2010, 10:25
- System: CCU
- Wohnort: Aachen
- Hat sich bedankt: 58 Mal
- Danksagung erhalten: 261 Mal
- Kontaktdaten:
Re: Fehler: Table "DATA_POINTS" already exists
Die Datenbank hat wohl einen bleibenden Schaden genommen.
Führe mal folgenden SQL-Befehl in der Datenbank aus (s.a. Handbuch):
Führe mal folgenden SQL-Befehl in der Datenbank aus (s.a. Handbuch):
Code: Alles auswählen
UPDATE CONFIG SET VALUE='3' WHERE NAME='internal.databaseVersion'
-
- Beiträge: 937
- Registriert: 07.12.2009, 11:55
- Hat sich bedankt: 2 Mal
- Danksagung erhalten: 3 Mal
Re: Fehler: Table "DATA_POINTS" already exists
Danke Matthias,
inzwischen musste ich mein RaspberryMatic komplett neu aufsetzen; da hat sich wohl seit einer Weile ein Fehler mit der SD Karte eingeschlichen.
Ich habe es noch hinbekommen ein Backup mit Historian Daten vorher noch zu machen! Interessante Beobachtung: Die DB Größe scheint in den letzten 6-8 Monaten enorm gewachsen zu sein.
Habe mich vorerst nicht getraut das Backup einzuspielen. Werde demnächst ein RPMatic zum spielen haben und könnte es ggf. versuchen! Besten Dank und Grüße,
OTF
inzwischen musste ich mein RaspberryMatic komplett neu aufsetzen; da hat sich wohl seit einer Weile ein Fehler mit der SD Karte eingeschlichen.
Ich habe es noch hinbekommen ein Backup mit Historian Daten vorher noch zu machen! Interessante Beobachtung: Die DB Größe scheint in den letzten 6-8 Monaten enorm gewachsen zu sein.
Habe mich vorerst nicht getraut das Backup einzuspielen. Werde demnächst ein RPMatic zum spielen haben und könnte es ggf. versuchen! Besten Dank und Grüße,
OTF
-
- Beiträge: 1794
- Registriert: 03.11.2010, 10:25
- System: CCU
- Wohnort: Aachen
- Hat sich bedankt: 58 Mal
- Danksagung erhalten: 261 Mal
- Kontaktdaten:
Re: Fehler: Table "DATA_POINTS" already exists
Die Datenbank besteht nur aus der Datei history.mv.db. Die trace-Datei enthält nur Fehlermeldungen und kann gelöscht werden. Die filepart-Datei ist mir unbekannt. Dem Alter nach kann sie aber auch gelöscht werden.
Für eine Datenbankwiederherstellung muss aber die history.mv.db sowieso gelöscht werden. Danach den CCU-Historian mit der Option -runscript und der entpackten Backupdatei starten.