Rrd4j ... unhandled exception .... mhhhh

Hi,

the following happens since I upgraded to the latest build …
I did run without errors for months before…

I have a simple persistence strategy just with a * to persist anything
I have some helper items that contain a concated string of multiple values…
now for every value update of these items suddenly there is an error in the log

07:49:24.437 [INFO ] [marthome.event.ItemStateChangedEvent] - TerrasseHealth changed from 1.5° C  |  80.00%RH  |  1027.00 hPa to 1.5° C  |  81.00%RH  |  1027.00 hPa
07:50:06.366 [ERROR] [org.quartz.core.JobRunShell         ] - Job rrd4j.everyMinute threw an unhandled Exception: 
java.lang.IllegalArgumentException: Value must be between 0 and 100
	at org.openhab.core.library.types.PercentType.validateValue(PercentType.java:48)[180:org.openhab.core.compat1x:2.0.0.201612022359]
	at org.openhab.core.library.types.PercentType.<init>(PercentType.java:33)[180:org.openhab.core.compat1x:2.0.0.201612022359]
	at org.openhab.persistence.rrd4j.internal.RRD4jService.mapToState(RRD4jService.java:344)[189:org.openhab.persistence.rrd4j:1.9.0.201612030211]
	at org.openhab.persistence.rrd4j.internal.RRD4jService.store(RRD4jService.java:124)[189:org.openhab.persistence.rrd4j:1.9.0.201612030211]
	at org.openhab.core.persistence.internal.PersistenceServiceDelegate.store(PersistenceServiceDelegate.java:55)[180:org.openhab.core.compat1x:2.0.0.201612022359]
	at org.eclipse.smarthome.model.persistence.internal.PersistItemsJob.execute(PersistItemsJob.java:54)[123:org.eclipse.smarthome.model.persistence:0.9.0.201612010841]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202)[102:org.eclipse.smarthome.core.scheduler:0.9.0.201612010841]
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)[102:org.eclipse.smarthome.core.scheduler:0.9.0.201612010841]
07:50:06.384 [ERROR] [org.quartz.core.ErrorLogger         ] - Job (rrd4j.everyMinute threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: java.lang.IllegalArgumentException: Value must be between 0 and 100]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:213)[102:org.eclipse.smarthome.core.scheduler:0.9.0.201612010841]
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)[102:org.eclipse.smarthome.core.scheduler:0.9.0.201612010841]
Caused by: java.lang.IllegalArgumentException: Value must be between 0 and 100
	at org.openhab.core.library.types.PercentType.validateValue(PercentType.java:48)[180:org.openhab.core.compat1x:2.0.0.201612022359]
	at org.openhab.core.library.types.PercentType.<init>(PercentType.java:33)[180:org.openhab.core.compat1x:2.0.0.201612022359]
	at org.openhab.persistence.rrd4j.internal.RRD4jService.mapToState(RRD4jService.java:344)[189:org.openhab.persistence.rrd4j:1.9.0.201612030211]
	at org.openhab.persistence.rrd4j.internal.RRD4jService.store(RRD4jService.java:124)[189:org.openhab.persistence.rrd4j:1.9.0.201612030211]
	at org.openhab.core.persistence.internal.PersistenceServiceDelegate.store(PersistenceServiceDelegate.java:55)[180:org.openhab.core.compat1x:2.0.0.201612022359]
	at org.eclipse.smarthome.model.persistence.internal.PersistItemsJob.execute(PersistItemsJob.java:54)[123:org.eclipse.smarthome.model.persistence:0.9.0.201612010841]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202)[102:org.eclipse.smarthome.core.scheduler:0.9.0.201612010841]
	... 1 more

rrd4j is not able to store strings, so best option is not to try to store those items in rrd4j :slight_smile:

hi udo
I understood that … just wondering why the " * " strategy for persitence did not throw that error before.

Well, updates are updates… :wink:

so basically * will not work anymore and I must name all items individually now in cfg?
:-/

You could create a group of all number items which you want to persist. That way you have to name only one group in the cfg.

Not to forget: It’s highly recommended not to persist * (at least in combination with rrd4j) and building persistence groups is way more flexible.