Influx Java Sockettimeout

Hi!

After upgrading to OH3 my rule throws errors:

2021-01-22 19:49:18.105 [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'temperature-1' failed: java.net.SocketTimeoutException: timeout in temperature
2021-01-22 19:50:13.107 [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'temperature-1' failed: java.net.SocketTimeoutException: timeout in temperature
2021-01-22 19:51:13.199 [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'temperature-1' failed: java.net.SocketTimeoutException: timeout in temperature
2021-01-22 19:52:13.268 [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'temperature-1' failed: java.net.SocketTimeoutException: timeout in temperature
2021-01-22 19:53:13.356 [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'temperature-1' failed: java.net.SocketTimeoutException: timeout in temperature

This is my temperature.rules.

In OH2.5 everything works:

import java.text.DecimalFormat
import java.time.format.DateTimeFormatter

rule "Temperatures"
when
Time cron "0 0/1 * 1/1 * ? *"
then
var DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm:ss")
var DateTimeFormatter day_formatter = DateTimeFormatter.ofPattern("HH:mm:ss")
var DecimalFormat decformat = new DecimalFormat("#.##")
var String myTimeStamp
var Number round


val ZonedDateTime zdt = ZonedDateTime.now()
val ZonedDateTime zdt1900 = ZonedDateTime.parse("1900-01-01T00:00:00+01:00[Europe/Berlin]")
var ZonedDateTime start_of_day = zdt.toLocalDate().atStartOfDay(zdt.getZone())
var ZonedDateTime start_of_month = zdt.withDayOfMonth(1).toLocalDate().atStartOfDay(zdt.getZone())
var ZonedDateTime start_of_year = zdt.withDayOfYear(1).toLocalDate().atStartOfDay(zdt.getZone())

//Tageswerte
myTimeStamp = (Vitocal_Aussentemperatur.maximumSince(start_of_day).getTimestamp).format(day_formatter)
round = Double::valueOf(Vitocal_Aussentemperatur.maximumSince(start_of_day).state.toString)
Aussentemperatur_TagMax.postUpdate(decformat.format(round) + " °C um " + myTimeStamp)

myTimeStamp = (Vitocal_Aussentemperatur.minimumSince(start_of_day).getTimestamp).format(day_formatter)
round = Double::valueOf(Vitocal_Aussentemperatur.minimumSince(start_of_day).state.toString)
Aussentemperatur_TagMin.postUpdate(decformat.format(round) +  " °C um " + myTimeStamp)

//Monatswerte
myTimeStamp = (Vitocal_Aussentemperatur.maximumSince(start_of_month).getTimestamp).format(formatter)
round = Double::valueOf(Vitocal_Aussentemperatur.maximumSince(start_of_month).state.toString)
Aussentemperatur_MonatMax.postUpdate(decformat.format(round) + " °C am " + myTimeStamp)

myTimeStamp = (Vitocal_Aussentemperatur.minimumSince(start_of_month).getTimestamp).format(formatter)
round = Double::valueOf(Vitocal_Aussentemperatur.minimumSince(start_of_month).state.toString)
Aussentemperatur_MonatMin.postUpdate(decformat.format(round) + " °C am " + myTimeStamp)

//Jahreswerte
myTimeStamp = (Vitocal_Aussentemperatur.maximumSince(start_of_year).getTimestamp).format(formatter)
round = Double::valueOf(Vitocal_Aussentemperatur.maximumSince(start_of_year).state.toString)
Aussentemperatur_JahrMax.postUpdate(decformat.format(round) + " °C am " + myTimeStamp)

myTimeStamp = (Vitocal_Aussentemperatur.minimumSince(start_of_year).getTimestamp).format(formatter)
round = Double::valueOf(Vitocal_Aussentemperatur.minimumSince(start_of_year).state.toString)
Aussentemperatur_JahrMin.postUpdate(decformat.format(round) + " °C am " + myTimeStamp)

//Ever
myTimeStamp = (Vitocal_Aussentemperatur.maximumSince(zdt1900).getTimestamp).format(formatter)
round = Double::valueOf(Vitocal_Aussentemperatur.maximumSince(zdt1900).state.toString)
Aussentemperatur_Max.postUpdate(decformat.format(round) + " °C am " + myTimeStamp)

myTimeStamp = (Vitocal_Aussentemperatur.minimumSince(zdt1900).getTimestamp).format(formatter)
round = Double::valueOf(Vitocal_Aussentemperatur.minimumSince(zdt1900).state.toString)
Aussentemperatur_Min.postUpdate(decformat.format(round) + " °C am " + myTimeStamp)
end

I’m getting similar errors after some random time of OpenHAB running.

Suddenly I can not use any Z-wave switches for example.

Is it possible to increase the socket timeout to influxdb?

Anyone else having this issue or a solution?

On my influxdb the statement over all values (min and max) returns instantly.

Is it possible to see which query OH3 sends to influx?

In TRACE mode i found the statement:

2021-03-06 07:56:21.390 [TRACE] [.influxdb.InfluxDBPersistenceService] - Query SELECT value FROM autogen.Vitocal_Aussentemperatur WHERE time >= '2013-12-31T23:00:00Z' ORDER BY time ASC;

but i am querying Minimum and Maximum. Persistence does not use this functions so it will fetch ALL values since 2014.
I think this is a bug.