MAPDB persistence error

Hi,

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
}

Items {
* : strategy = everyChange, restoreOnStartup
}

My error log file is the following:

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 :slight_smile: 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 :slight_smile:
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.

Stefan,

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.

So you should clean up your installation a little bit. :wink: Maybe the parsing errors do come from these files…

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.

I have some additional information.

  1. 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]
  1. 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.

  1. 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 :wink: 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:

Strategies {
        default = everyChange
}
Items {
        gChilli*, gOut* : strategy = everyChange
	Temp1DS3 : strategy = everyChange

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. :scream: 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”)…

I will check tonight whether I get error at shutdown (at office now) and will try deleting the cron lines as well.

What is very interesting is you saying you have an Openhabian installation. Mine is Openhabian as well.

Mine is also openhabian and I also do use mapdb and rrd4j. I do not get these errors and the persistences are working.

@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

Used this image: https://github.com/openhab/openhabian/releases/download/v1.1/openhabianpi-ua-netinst-20170218-git11d8ebc.img

Results:

  1. My Chartproblem is Fixed (from the other thread)
  2. 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 am using the latest openhabian version (1.1) and the latest snaphot OH version.

I doubt it’s related to openhabian.

In HABmin I also do not see any kind of persistence data.

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)

Strategies {

        default = everyChange, restoreOnStartup

}

If I remove mapdb.persist, the error doesn’t happen on shutdown.

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?

Maybe we can find a common ground.

I use a fresh openhabian Installation. Nothing done to the OS after instalation not even changed passwords :wink:

  • Openhabian (Image from 18.02.2017) from here https://github.com/openhab/openhabian/releases
    Raspbian 8,
    Kernel 4.4.0-1-rpi
    Openhab 2.0 stable

  • Hardware: Raspberry Pi 2 B+ Rev 1.2

  • output of java -version:
    openjdk version "1.8.0_112"
    OpenJDK Runtime Environment (Zulu Embedded 8.19.0.31-linux-aarch32hf) (build 1.8.0_112-b31)
    OpenJDK Client VM (Zulu Embedded 8.19.0.31-linux-aarch32hf) (build 25.112-b31, mixed mode, Evaluation)

  • Installed Bindings:
    RRD4J Persistence
    MQTT
    GPIO-Binding
    Hue Emulation
    Network Binding

If You need any further information feel free to ask,

Mine is very benign.

OH: Apt install of OH stable
OS: Fresh Debian 8.7 x64
HW: VM running on XenServer. Dual core 1gb memory 16gb lvm partition(s). No desktop environment.
Java -version:

java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

Only binding I had at the time besides mapdb was the dscalarm binding.

I now installed the mysql binding. Same Error with cron related strategies. On “EveryChange” only it works fine. Still wonder why this is. :confused:

I can live with every change on mysql for now because my values update once every 3 to 5 minutes. But this is not satisfying.

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.