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: "Caizhen Liu" <[email protected]>
To: "'Kasemir, Kay'" <[email protected]>, <[email protected]>
Cc: "'Ben Penaflor'" <[email protected]>, "'Ikenna Anyanetu'" <[email protected]>
Date: Mon, 17 Oct 2016 12:23:39 -0700
Dear Kay Kasemir,

Yes, the problem was related to metadata data type. Once the limit was
configured to "double precision" instead of "REAL", no error was reported
even when I tried to archive all the PVs. 

I deeply appreciated all your support!

Caizhen

-----Original Message-----
From: Kasemir, Kay [mailto:[email protected]] 
Sent: Monday, October 17, 2016 5:13 AM
To: Caizhen Liu; [email protected]
Cc: 'Ben Penaflor'; 'Ikenna Anyanetu'
Subject: Re: archive engine

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/ar
chive/archive-plugins/org.csstudio.archive.writer.rdb/src/org/csstudio/archi
ve/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/ar
chive/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


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

Navigate by Date:
Prev: RE: Using text/graphic object to block a widget Li, Yuelin
Next: Re: archive engine Konrad, Martin
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 Kasemir, Kay
Next: Re: archive engine Konrad, Martin
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 ·