EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: archive engine
From: "Kasemir, Kay" <[email protected]>
To: Caizhen Liu <[email protected]>, "[email protected]" <[email protected]>
Cc: "'Ben Penaflor'" <[email protected]>, "'Ikenna Anyanetu'" <[email protected]>
Date: Mon, 17 Oct 2016 12:13:28 +0000
Hi:

________________________________________
From: Caizhen Liu <[email protected]>
I got the following error in the log file
/var/opt/codac/css/archive-engine-CODAC/console.log.

org.csstudio.archive.engine.model.WriteThread (run) - Error, will try to
reconnect
org.postgresql.util.PSQLException: ERROR: value out of range: underflow
..        at
org.csstudio.archive.writer.rdb.NumericMetaDataHelper.insert(NumericMetaData
Helper.java:84)
..
Is this related to our EPICS IOC?

---

The code in question is https://github.com/ControlSystemStudio/cs-studio/blob/master/applications/archive/archive-plugins/org.csstudio.archive.writer.rdb/src/org/csstudio/archive/writer/rdb/NumericMetaDataHelper.java#L60, which tries to write the numeric meta data of a channel, i.e. the units, limits etc.
For some reason your relational database doesn't like some of the values.

The RDB table into which the metadata is written should be the num_metadata table based on this definition:
https://github.com/ControlSystemStudio/cs-studio/blob/master/applications/archive/archive-plugins/org.csstudio.archive.rdb/dbd/postgres_schema.txt#L245

Not 100% sure of the meaning of "value out of range: underflow" for Postgres, but it could mean that one of the limit values is too small for a "REAL". Note that the "sample" table has been updated in 2013 to use "double precision" instead of "REAL" for a data type.
Maybe the num_metadata table also needs to use "double precision" instead of "REAL"?

Ideally, you could update the sources to print the channel name on the exception, so you'd see what channel is causing the problem.

-Kay

Replies:
RE: archive engine Caizhen Liu
References:
FW: archive engine Caizhen Liu
Re: archive engine Kasemir, Kay
RE: archive engine Caizhen Liu

Navigate by Date:
Prev: Re: Write data to SNMP-based devices Priller, John
Next: Using text/graphic object to block a widget Li, Yuelin
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: archive engine Caizhen Liu
Next: RE: archive engine Caizhen Liu
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 17 Oct 2016 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·