my mapdb persistence is not working. Trying to do a restore on startup.
After debugging I noticed there are some errors in the log file. It looks that whenever I try to edit the mapdb persistence file openhanded tries ro deler a certain cronjob and it fails to do so, see below error. Does anyone have an idea how I can delete this cron job manually ?
I looked at cron files but could find it.
Thanks in advance
my mapdb persistence file is
// persistence strategies have a name and a definition and are referred to in the “Items” section
Strategies {
// for charts, we need a cron strategy
everyMinute : "0 * * * * ?"
everyFiveMinutes : "0 0/5 * * * ?"
everyDay : "0 0 0 * * ?"
default = everyChange
}
2017-02-19 18:53:30.535 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'mapdb.persist’
2017-02-19 18:53:30.545 [WARN ] [.core.persistence.PersistenceManager] - Failed to delete cron job for dbId 'mapdb’
2017-02-19 18:53:30.677 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'mapdb.persist’
2017-02-19 18:53:30.682 [ERROR] [.core.internal.folder.FolderObserver] - Error handling update of file ‘/etc/openhab2/persistence/mapdb.persist’: null.
java.lang.NullPointerException
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.removeFutures(ExpressionThreadPoolManager.java:321)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.remove(ExpressionThreadPoolManager.java:291)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.remove(ExpressionThreadPoolManager.java:308)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.removeTimers(PersistenceManagerImpl.java:321)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.stopEventHandling(PersistenceManagerImpl.java:377)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.removeConfig(PersistenceManagerImpl.java:348)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.model.persistence.internal.PersistenceModelManager.modelChanged(PersistenceModelManager.java:85)[125:org.eclipse.smarthome.model.persistence:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.notifyListeners(ModelRepositoryImpl.java:207)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.addOrRefreshModel(ModelRepositoryImpl.java:120)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.checkFile(FolderObserver.java:272)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.access$1(FolderObserver.java:265)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver$WatchQueueReader.processWatchEvent(FolderObserver.java:146)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.core.service.AbstractWatchQueueReader.run(AbstractWatchQueueReader.java:122)[98:org.eclipse.smarthome.core:0.9.0.b4]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]
Hi,
I cant help you (yet) but i have a similar problem.
Maybe even the same. The only difference is that i use rrd4j as persistence.
My error looks like this:
2017-02-19 10:34:46.786 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'rrd4j.persist'
2017-02-19 10:34:46.855 [WARN ] [.core.persistence.PersistenceManager] - Failed to delete cron job for dbId 'rrd4j'
2017-02-19 10:34:47.825 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'rrd4j.persist'
2017-02-19 10:34:47.946 [ERROR] [.core.internal.folder.FolderObserver] - Error handling update of file '/etc/openhab2/persistence/rrd4j.persist': null.
java.lang.NullPointerException
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.removeFutures(ExpressionThreadPoolManager.java:321)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.remove(ExpressionThreadPoolManager.java:291)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.remove(ExpressionThreadPoolManager.java:308)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.removeTimers(PersistenceManagerImpl.java:321)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.stopEventHandling(PersistenceManagerImpl.java:377)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.removeConfig(PersistenceManagerImpl.java:348)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.model.persistence.internal.PersistenceModelManager.modelChanged(PersistenceModelManager.java:85)[125:org.eclipse.smarthome.model.persistence:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.notifyListeners(ModelRepositoryImpl.java:207)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.addOrRefreshModel(ModelRepositoryImpl.java:120)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.checkFile(FolderObserver.java:272)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.access$1(FolderObserver.java:265)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver$WatchQueueReader.processWatchEvent(FolderObserver.java:146)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.core.service.AbstractWatchQueueReader.run(AbstractWatchQueueReader.java:122)[98:org.eclipse.smarthome.core:0.9.0.b4]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]
If you fix your problem i would be very happy if you let me know how If i come across a solution i will tell you.
One Question: Do you have a very long Error (FrameworkEvent ERROR) when you start up openhab?
That indeed looks like exactly the same type of error, which means its not rrd4j or mapdb specific.
I will definitely keep you posted and let you know when I solve it. I tried a lot of things already, installing the mapdb, re-installing it, deleting the database files of mapdb etc but non so far seem to help.
Not sure what Framework event error you are referring to but I do have some strange errors at startup, see below. It looks like I edited some files with the apple text editor (which I did) and this added some data to the file openhanded is unable to deal with. But based on the log file I don’t manage to find out which con fig files are the ones causing the errors.
2017-02-19 18:34:55.196 [WARN ] [g.dispatch.internal.ConfigDispatcher] - Could not parse line 'Mac OS X 2��ATT��h�com.apple.TextEncoding�Y7com.apple.metadata:kMDLabel_bmmykhj5sr4i7ybealo5x2zulmutf-8;134217984��or�’
2017-02-19 18:34:55.205 [WARN ] [g.dispatch.internal.ConfigDispatcher] - Could not parse line ��Á<�@�`�g��U�"8�Q?�B�"MG’
2017-02-19 18:34:55.207 [WARN ] [g.dispatch.internal.ConfigDispatcher] - Could not parse line '\��}Jˌ�
��s%�\���xk�)���]}l��X�1�(�’
2017-02-19 18:34:55.208 [WARN ] [g.dispatch.internal.ConfigDispatcher] - Could not parse line 'This resource fork intentionally left blank ��’
2017-02-19 18:34:55.215 [WARN ] [g.dispatch.internal.ConfigDispatcher] - Could not parse line 'Mac OS X 2��ATT��x�com.apple.TextEncoding�i7com.apple.metadata:kMDLabel_bmmykhj5sr4i7ybealo5x2zulmutf-8;134217984��-
�s�+������@����dfg�]'
2017-02-19 18:34:55.217 [WARN ] [g.dispatch.internal.ConfigDispatcher] - Could not parse line ‘���
��e�����)�’3�%A{’*
~�2������we��2����+��\R.�B"�AH����
�I�{vY�KG4��QWThis resource fork intentionally left blank ��’
2017-02-19 18:34:55.224 [WARN ] [g.dispatch.internal.ConfigDispatcher] - Could not parse line 'Mac OS X 2��ATT#��h�com.apple.TextEncoding�Y7com.apple.metadata:kMDLabel_bmmykhj5sr4i7ybealo5x2zulmutf-8;134217984��d�akj��e������$�9���@�O���’
2017-02-19 18:34:55.226 [WARN ] [g.dispatch.internal.ConfigDispatcher] - Could not parse line '��휨�4 \���
_��5\B���Uy�љ2H9R��qUgቕpOMP��������This resource fork intentionally left blank ��’
2017-02-19 18:35:01.804 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'beukenbos.items’
2017-02-19 18:35:02.248 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model '._beukenbos.items’
2017-02-19 18:35:02.374 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'jdbc.persist’
2017-02-19 18:35:02.481 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'mapdb.persist’
2017-02-19 18:35:02.503 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model '._jdbc.persist’
2017-02-19 18:35:06.062 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model '._beukenbos.rules’
2017-02-19 18:35:06.287 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'beukenbos.rules’
2017-02-19 18:35:07.333 [WARN ] [el.core.internal.ModelRepositoryImpl] - Configuration model ‘._beukenbos.rules’ is either empty or cannot be parsed correctly!
2017-02-19 18:35:08.265 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'beukenbos.sitemap’
2017-02-19 18:35:08.434 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model '._beukenbos.sitemap’
2017-02-19 18:35:10.363 [INFO ] [.dashboard.internal.DashboardService] - Started dashboard at /start
2017-02-19 18:35:10.953 [INFO ] [basic.internal.servlet.WebAppServlet] - Started Basic UI at /basicui/app
2017-02-19 18:35:11.199 [INFO ] [arthome.ui.paper.internal.PaperUIApp] - Started Paper UI at /paperui
2017-02-19 18:35:11.298 [INFO ] [panel.internal.HABPanelDashboardTile] - Started HABPanel at /habpanel
2017-02-19 18:35:12.404 [INFO ] [kobus.internal.core.NikobusInterface] - Connected to serial port '/dev/ttyUSB0’
2017-02-19 18:35:12.492 [INFO ] [kobus.internal.core.NikobusInterface] - Connected to Nikobus
2017-02-19 18:35:12.503 [INFO ] [ing.tcp.AbstractSocketChannelBinding] - The maximum buffer will be set to the default value of 1024
2017-02-19 18:35:12.506 [INFO ] [ing.tcp.AbstractSocketChannelBinding] - The interval to retry connection setups will be set to the default value of 5
2017-02-19 18:35:12.508 [INFO ] [ing.tcp.AbstractSocketChannelBinding] - The cron job to reset connections will be set to the default value of 0 0 0 * * ?
2017-02-19 18:35:12.511 [INFO ] [ing.tcp.AbstractSocketChannelBinding] - The setting to queue write operation until a channel gets connected will be set to the default value of true
2017-02-19 18:35:12.514 [INFO ] [ing.tcp.AbstractSocketChannelBinding] - Listening for incoming connections on /0:0:0:0:0:0:0:0:3000
2017-02-19 18:35:12.521 [INFO ] [ing.tcp.protocol.internal.TCPBinding] - The maximum time out for blocking write operations will be set to the default value of 3000
2017-02-19 18:35:12.522 [INFO ] [ing.tcp.protocol.internal.TCPBinding] - The preamble for all write operations will be set to the default value of ""
2017-02-19 18:35:12.523 [INFO ] [ing.tcp.protocol.internal.TCPBinding] - The postamble for all write operations will be set to the default value of ""
2017-02-19 18:35:12.524 [INFO ] [ing.tcp.protocol.internal.TCPBinding] - The characterset will be set to the default value of ASCII
2017-02-19 18:35:12.528 [INFO ] [b.core.service.AbstractActiveService] - TCP Refresh Service has been started
2017-02-19 18:35:12.534 [WARN ] [ing.tcp.AbstractSocketChannelBinding] - When using address masks we will not verify if we are already listening to similar incoming connections
2017-02-19 18:35:12.537 [INFO ] [ing.tcp.AbstractSocketChannelBinding] - We will accept data coming from the remote end 10.0.1.154:*
2017-02-19 18:35:14.030 [INFO ] [persistence.jdbc.internal.JdbcMapper] - JDBC::openConnection: Driver is available::Yank setupDataSource
2017-02-19 18:36:49.318 [WARN ] [ore.internal.events.OSGiEventManager] - Dispatching event to subscriber ‘org.eclipse.smarthome.model.rule.runtime.internal.engine.RuleEngineImpl@1b7cfdd’ takes more than 5000ms.
2017-02-19 18:36:49.936 [WARN ] [ore.internal.events.OSGiEventManager] - Dispatching event to subscriber ‘org.eclipse.smarthome.model.rule.runtime.internal.engine.RuleEngineImpl@1b7cfdd’ takes more than 5000ms.
2017-02-19 18:36:50.448 [ERROR] [model.script.actions.ScriptExecution] - Failed to schedule code for execution.
org.quartz.ObjectAlreadyExistsException: Unable to store Job : ‘DEFAULT.2017-02-19T18:37:00.109+01:00: Proxy for org.eclipse.xtext.xbase.lib.Procedures$Procedure0: [ {
{
var jsonauth
var sessionid
sendHttpGetRequest()
}
} ]’, because one already exists with this identification.
at org.quartz.simpl.RAMJobStore.storeJob(RAMJobStore.java:279)
at org.quartz.simpl.RAMJobStore.storeJobAndTrigger(RAMJobStore.java:251)
at org.quartz.core.QuartzScheduler.scheduleJob(QuartzScheduler.java:886)
at org.quartz.impl.StdScheduler.scheduleJob(StdScheduler.java:249)
at org.eclipse.smarthome.model.script.actions.ScriptExecution.createTimer(ScriptExecution.java:97)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_121]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_121]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_121]
at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_121]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1085)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1060)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._invokeFeature(XbaseInterpreter.java:1046)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeFeature(XbaseInterpreter.java:991)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.invokeFeature(ScriptInterpreter.java:114)[129:org.eclipse.smarthome.model.script:0.9.0.b4]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:901)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:864)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:223)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:203)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:1211)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:215)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:203)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:446)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:227)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:203)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.evaluate(XbaseInterpreter.java:189)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.smarthome.model.script.runtime.internal.engine.ScriptImpl.execute(ScriptImpl.java:77)[130:org.eclipse.smarthome.model.script.runtime:0.9.0.b4]
at org.eclipse.smarthome.model.script.engine.ScriptExecutionThread.run(ScriptExecutionThread.java:42)[129:org.eclipse.smarthome.model.script:0.9.0.b4]
2017-02-19 18:36:50.450 [ERROR] [model.script.actions.ScriptExecution] - Failed to schedule code for execution.
org.quartz.ObjectAlreadyExistsException: Unable to store Job : ‘DEFAULT.2017-02-19T18:37:00.108+01:00: Proxy for org.eclipse.xtext.xbase.lib.Procedures$Procedure0: [ {
{
var jsonauth
var sessionid
sendHttpGetRequest()
}
} ]’, because one already exists with this identification.
at org.quartz.simpl.RAMJobStore.storeJob(RAMJobStore.java:279)
at org.quartz.simpl.RAMJobStore.storeJobAndTrigger(RAMJobStore.java:251)
at org.quartz.core.QuartzScheduler.scheduleJob(QuartzScheduler.java:886)
at org.quartz.impl.StdScheduler.scheduleJob(StdScheduler.java:249)
at org.eclipse.smarthome.model.script.actions.ScriptExecution.createTimer(ScriptExecution.java:97)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_121]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_121]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_121]
at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_121]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1085)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1060)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._invokeFeature(XbaseInterpreter.java:1046)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeFeature(XbaseInterpreter.java:991)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.invokeFeature(ScriptInterpreter.java:114)[129:org.eclipse.smarthome.model.script:0.9.0.b4]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:901)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:864)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:223)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:203)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:1211)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:215)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:203)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:446)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:227)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:203)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]PuTTY
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.evaluate(XbaseInterpreter.java:189)[145:org.eclipse.xtext.xbase:2.9.2.v20160428-1452]
at org.eclipse.smarthome.model.script.runtime.internal.engine.ScriptImpl.execute(ScriptImpl.java:77)[130:org.eclipse.smarthome.model.script.runtime:0.9.0.b4]
at org.eclipse.smarthome.model.script.engine.ScriptExecutionThread.run(ScriptExecutionThread.java:42)[129:org.eclipse.smarthome.model.script:0.9.0.b4]
As you are also using jdbc, do you get the same error for this persistence?
And regarding this (although it’s probably not related): Is that intentionally that you have multiple files with "_" beginning and also the same file again without "_"? Are they relevant? Because they are executed normally. If you don’t want them to be recognized by OH, you have to change the file extension name, not add a prefix.
my hsbc runs fine, no issues with that one. It stores the data on an external mysql (MariaDB) database. But that one doesn’t have a RestoreOnStarup though.
Regarding the files with the “_” I don’t know where they come from actually. I never created them and they are not intentionally.
Stefan, tanks a lot indeed deleting those files and the .ds_store files did clean up the error messages.
However it did not resolve the persistence issue. And I was wrong I do have exactly the same behavior with the JDBC and mapdb persistence when updating the persistence files see below
2017-02-20 08:36:49.580 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model ‘mapdb.persist’
2017-02-20 08:36:49.658 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model ‘mapdb.persist’
2017-02-20 08:36:49.667 [ERROR] [.core.internal.folder.FolderObserver] - Error handling update of file ‘/etc/openhab2/persistence/mapdb.persist’: null.
java.lang.NullPointerException
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.removeFutures(ExpressionThreadPoolManager.java:321)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.remove(ExpressionThreadPoolManager.java:291)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.remove(ExpressionThreadPoolManager.java:308)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.removeTimers(PersistenceManagerImpl.java:321)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.stopEventHandling(PersistenceManagerImpl.java:377)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.removeConfig(PersistenceManagerImpl.java:348)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.model.persistence.internal.PersistenceModelManager.modelChanged(PersistenceModelManager.java:85)[125:org.eclipse.smarthome.model.persistence:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.notifyListeners(ModelRepositoryImpl.java:207)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.addOrRefreshModel(ModelRepositoryImpl.java:120)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.checkFile(FolderObserver.java:272)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.access$1(FolderObserver.java:265)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver$WatchQueueReader.processWatchEvent(FolderObserver.java:146)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.core.service.AbstractWatchQueueReader.run(AbstractWatchQueueReader.java:122)[98:org.eclipse.smarthome.core:0.9.0.b4]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]
2017-02-20 08:37:58.912 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model ‘jdbc.persist’
2017-02-20 08:37:59.009 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model ‘jdbc.persist’
2017-02-20 08:37:59.015 [ERROR] [.core.internal.folder.FolderObserver] - Error handling update of file ‘/etc/openhab2/persistence/jdbc.persist’: null.
java.lang.NullPointerException
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.removeFutures(ExpressionThreadPoolManager.java:321)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.remove(ExpressionThreadPoolManager.java:291)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.remove(ExpressionThreadPoolManager.java:308)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.removeTimers(PersistenceManagerImpl.java:321)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.stopEventHandling(PersistenceManagerImpl.java:377)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.removeConfig(PersistenceManagerImpl.java:348)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.model.persistence.internal.PersistenceModelManager.modelChanged(PersistenceModelManager.java:85)[125:org.eclipse.smarthome.model.persistence:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.notifyListeners(ModelRepositoryImpl.java:207)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.addOrRefreshModel(ModelRepositoryImpl.java:120)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.checkFile(FolderObserver.java:272)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.access$1(FolderObserver.java:265)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver$WatchQueueReader.processWatchEvent(FolderObserver.java:146)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.core.service.AbstractWatchQueueReader.run(AbstractWatchQueueReader.java:122)[98:org.eclipse.smarthome.core:0.9.0.b4]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]
Ok. At least we seem to have it isolated to the persistence problem now.
Unfortunately I can’t be of any help with that.
@Kai: Might you have a look? This user has a problem with jdbc and mapdb persistence and @borderbridge has the same error (at least I think it’s the same) with his rrd4j persistence.
When i shutdown Openhab (sudo service opnehab2 stop) i get the following error related to persistence
2017-02-20 10:27:40.358 [WARN ] [.core.persistence.PersistenceManager] - Failed to delete cron job for dbId 'rrd4j'
2017-02-20 10:27:40.369 [WARN ] [.core.persistence.PersistenceManager] - Failed to delete cron job for dbId 'rrd4j'
2017-02-20 10:27:40.755 [INFO ] [io.openhabcloud.internal.CloudClient] - Shutting down openHAB Cloud service connection
2017-02-20 10:27:41.718 [ERROR] [.eclipse.smarthome.model.persistence] - [org.eclipse.smarthome.model.persistence.manager(97)] The unsetModelRepository method has thrown an exception
java.lang.NullPointerException
at org.eclipse.smarthome.model.persistence.internal.PersistenceModelManager.unsetModelRepository(PersistenceModelManager.java:67)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_121]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_121]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_121]
at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_121]
at org.apache.felix.scr.impl.inject.BaseMethod.invokeMethod(BaseMethod.java:224)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.inject.BaseMethod.access$500(BaseMethod.java:39)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.inject.BaseMethod$Resolved.invoke(BaseMethod.java:617)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.inject.BaseMethod$NotResolved.invoke(BaseMethod.java:576)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.inject.BaseMethod.invoke(BaseMethod.java:501)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.inject.BindMethod.invoke(BindMethod.java:655)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.manager.DependencyManager.invokeUnbindMethod(DependencyManager.java:1837)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.manager.DependencyManager.close(DependencyManager.java:1600)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.manager.SingleComponentManager.disposeImplementationObject(SingleComponentManager.java:352)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.manager.SingleComponentManager.deleteComponent(SingleComponentManager.java:152)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.manager.AbstractComponentManager.doDeactivate(AbstractComponentManager.java:813)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.manager.AbstractComponentManager.deactivateInternal(AbstractComponentManager.java:787)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.manager.AbstractComponentManager.dispose(AbstractComponentManager.java:579)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.disposeComponents(ConfigurableComponentHolder.java:706)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.BundleComponentActivator.dispose(BundleComponentActivator.java:523)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.Activator.disposeComponents(Activator.java:452)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.Activator.access$300(Activator.java:54)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.scr.impl.Activator$ScrExtension.destroy(Activator.java:306)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.utils.extender.AbstractExtender$2.run(AbstractExtender.java:290)[32:org.apache.felix.scr:2.0.6]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_121]
at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_121]
at org.apache.felix.utils.extender.AbstractExtender.destroyExtension(AbstractExtender.java:312)[32:org.apache.felix.scr:2.0.6]
at org.apache.felix.utils.extender.AbstractExtender.bundleChanged(AbstractExtender.java:186)[32:org.apache.felix.scr:2.0.6]
at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:902)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:165)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:75)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:67)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:102)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.container.Module.publishEvent(Module.java:466)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.container.Module.doStop(Module.java:624)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.container.Module.stop(Module.java:488)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.decStartLevel(ModuleContainer.java:1623)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1542)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.container.SystemModule.stopWorker(SystemModule.java:248)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule.stopWorker(EquinoxBundle.java:144)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.container.Module.doStop(Module.java:626)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.container.Module.stop(Module.java:488)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:186)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule$1.run(EquinoxBundle.java:159)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]
at startup openhab it loads my persistence without error. but when is begin to change something in the rrd4j.persist file i get the Error. here is my log at startup:
2017-02-20 10:40:52.163 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'Roete.items'
2017-02-20 10:40:58.600 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'rrd4j.persist'
2017-02-20 10:41:39.811 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'office.rules'
2017-02-20 10:41:53.716 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'Roete.sitemap'
2017-02-20 10:41:57.393 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'Roete.things'
2017-02-20 10:42:17.935 [INFO ] [.dashboard.internal.DashboardService] - Started dashboard at /start
2017-02-20 10:42:21.830 [INFO ] [penhab.io.transport.mqtt.MqttService] - MQTT Service initialization completed.
2017-02-20 10:42:21.871 [INFO ] [t.mqtt.internal.MqttBrokerConnection] - Starting MQTT broker connection 'mosquitto'
other Strange things:
1)i get the *.rrd files in /var/lib/openhab2/persistence/rrd4j. the timestamp of these files also update, but i think they are not working properly because i cant draw a chart from them.
I get a rrd file for my Group too - is that normal?
Is there any tool with that i can “open” those files to see weather the values stored there are plausible or not? Or test in any way if they are corruped? i already deleted them and they reapeared but still they are not working.
does this make sense to anyone?
@rswennen do you get this error at shutdown as well? do you get your error (related to persistence) when you start openhab? // Can you post logs (if you do) in those boxes? this way it is better to read for everyone There is a button for them 2 to the right of the “emoji button” when editing your posts
Suppliment:
Now i deleted my persist file and created a new one after that without cronjobs It looks now like that:
and i get no error when i save it. as soon as i add a cronthing (like everyMinute …) i get that same old error. so the problem seems to be with this cron stuff? right? wrong? maybe my whole operatingsystem(openHABian) is messed up somehow?
Still the Problem, that i can not create a chart out of that persistence (that gives me now no errors) persist. My *.rrd files update i change the variables so that “everyChange” happens still nothing. I could cry.
I will try a new installation of openhabian on an other sd card now (maybe tomorrow i should do some “real work now”)…
@jaydee73 what “version” of openhabian do you have? @jaydee73@rswennen Do you have HABmin? if so when you go the persistence section of Configuration. Do you see any of your persitences there? Because i Don’t
I let openhabian install itsself on a clean sd_card. Installed the rrd4j addon via Paper UI and tried it out
Still same Problem with persistence. As soon as i add this cron stuff as a strategy i get an error
2.1) *.rrd files are updated as values change but
2.2 charts of the items are empty and stay empty in Habmin/ClassicUi,…
is there any way i can check whether or not my *.rrd files are ok
I tried the same, first new persist file without cron. Afterwards add a cron, which gives the error below and when removing cron again it gives the failed to delete cron warning.
PS my openhanded version is
openHAB 2.0.0-1 (Release Build)
openHABianPi 6.09.170119
2017-02-20 21:13:42.180 [ERROR] [.core.internal.folder.FolderObserver] - Error handling update of file ‘/etc/openhab2/persistence/mapdb.persist’: null.
java.lang.NullPointerException
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.removeFutures(ExpressionThreadPoolManager.java:321)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.remove(ExpressionThreadPoolManager.java:291)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.scheduler.ExpressionThreadPoolManager$ExpressionThreadPoolExecutor.remove(ExpressionThreadPoolManager.java:308)[98:org.eclipse.smarthome.core:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.removeTimers(PersistenceManagerImpl.java:321)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.stopEventHandling(PersistenceManagerImpl.java:377)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.core.persistence.internal.PersistenceManagerImpl.removeConfig(PersistenceManagerImpl.java:348)[103:org.eclipse.smarthome.core.persistence:0.9.0.b4]
at org.eclipse.smarthome.model.persistence.internal.PersistenceModelManager.modelChanged(PersistenceModelManager.java:85)[125:org.eclipse.smarthome.model.persistence:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.notifyListeners(ModelRepositoryImpl.java:207)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.ModelRepositoryImpl.addOrRefreshModel(ModelRepositoryImpl.java:120)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.checkFile(FolderObserver.java:272)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver.access$1(FolderObserver.java:265)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.model.core.internal.folder.FolderObserver$WatchQueueReader.processWatchEvent(FolderObserver.java:146)[122:org.eclipse.smarthome.model.core:0.9.0.b4]
at org.eclipse.smarthome.core.service.AbstractWatchQueueReader.run(AbstractWatchQueueReader.java:122)[98:org.eclipse.smarthome.core:0.9.0.b4]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]
2017-02-20 21:14:14.120 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'mapdb.persist’
2017-02-20 21:14:14.129 [WARN ] [.core.persistence.PersistenceManager] - Failed to delete cron job for dbId 'mapdb’
2017-02-20 21:14:14.132 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'mapdb.persist’
2017-02-20 21:14:14.151 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model ‘mapdb.persist’
I’m trying to setup mapdb on a fresh test install of OH2. I’m getting roughly the same error as @borderbridge at service stop. I’m on fully updated Debian jessie vm x64 running oracle java.
java version "1.8.0_121"
Java™ SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot™ 64-Bit Server VM (build 25.121-b13, mixed mode)
To further track this down (to hopefully isolate the reason), could you guys post your environment?
OH version (stable, snapshot etc.)?
OS (Debian, Raspbian, Windows, a VM or whatever)?
HW on which your system is running (RPI, Pine, PC, MAC, Synology…)?
Java-Version?
Any other “non-standard” things?
Hmmm…Both of you are using OH2 2.0 stable. I am using OH2 unstable (and I don’t have these errors).
Any chance that one of you could try to switch to the unstable 2.1 version and see if the error persists? @Moxified: As you are running a VM, this would be quite simple making a snapshot and then do the switch? After that you can restore your snapshot. Should be without a risk.