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  <20142015  2016  2017  2018  2019  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: Re: Problem with CSS archive engine
From: 龙巍 <longw@ihep.ac.cn>
To: "Kasemir, Kay" <kasemirk@ornl.gov>
Cc: tech-talk@aps.anl.gov
Date: Fri, 31 Oct 2014 09:11:24 +0800
Hello, Kay,
The "OutOfMemoryError" problem has been solved by your method. but ArchiveEngine still stopped with the end of message like this:

... More messsages suppressed for 1.00 days ....
And the system works well at 1HZ. So, the system may be not suitable for the 25HZ situation. We have to conside to buy a data-aquisition system. The "X" axis of the waveform data is an array of ("double" type) consts which is got from a software device support module.

Thanks.

Long Wei

于 2014/10/28 21:37, Kasemir, Kay 写道:
Hi:

To fix your immediate problem, OutOfMemoryError, you can run the archive engine with more memory.
Use command-line options ending in
   ArchiveEngine -pluginCustomization ….. -vmargs -Xmx1024m
to pass suitable -Xm* options.

But a  waveform PV of 2048 points at 25Hz will lead to other problems.
This archive system is for long-term monitoring of the control system.
It's for monitoring temperatures, voltages etc. over days, months, storing them into one continuous archive.
It's not a data-aquisition system for capturing data that is fast but specific to one experiement.
Such data is usually captured by a data acquisition system for the duration of one experiment, then saved to a set of files, and users take those files home.

While the generic archive can save waveforms, there's currently no good tool to view the waveforms. One reason is that a waveform usually lacks information:
What is the "X" axis of the waveform data??

Thanks,
Kay

On Oct 21, 2014, at 10:39 PM, 龙巍 <longw@ihep.ac.cn>
  wrote:

Now the IOC time is synchronized with the NTP server and works well. But there is still the problem.
Here is the message(by the way: The waveform PV has 2048 points (double value), and the updating frequence is 25HZ):
D:\cssAchiver\eclipse>ArchiveEngine.exe -engine Demo -pluginCustomization test.i
ni
2014-10-22 10:14:20.505 配置 [Thread 1] org.csstudio.vtype.pv.internal.Activator
(start) - PV prefix ca provided by JCA in org.csstudio.vtype.pv
2014-10-22 10:14:20.521 配置 [Thread 1] org.csstudio.vtype.pv.internal.Activator
(start) - PV prefix loc provided by Local in org.csstudio.vtype.pv
2014-10-22 10:14:20.537 配置 [Thread 1] org.csstudio.vtype.pv.internal.Activator
(start) - Default PV type ca
2014-10-22 10:14:20.537 信息 [Thread 1] org.csstudio.archive.engine.Application
(start) - Archive Engine 3.3.0.201406061208
2014-10-22 10:14:20.724 信息 [Thread 1] org.csstudio.archive.engine.server.Engin
eServer (<init>) - Engine HTTP Server on http://localhost:4812/main
2014-10-22 10:14:20.724 信息 [Thread 1] org.csstudio.archive.engine.Application
(start) - Reading configuration 'Demo'
2014-10-22 10:14:21.317 信息 [Thread 1] org.csstudio.archive.engine.Application
(start) - Read configuration: 1 channels in 0.58 seconds
2014-10-22 10:14:21.317 信息 [Thread 1] org.csstudio.archive.engine.Application
(start) - Running, CA addr list: 192.168.0.66
2014-10-22 10:14:21.317 信息 [Thread 46] org.csstudio.archive.engine.model.Write
Thread (run) - WriteThread starts
2014-10-22 10:14:21.348 配置 [Thread 1] org.csstudio.vtype.pv.jca.JCAContext (<i
nit>) - Using Pure Java CAJ
2014-10-22 10:14:21.582 信息 [Thread 55] org.csstudio.archive.engine.scanner.Sca
nThread (run) - Scan Thread runs
2014-10-22 10:14:51.378 警告 [Thread 52] org.csstudio.archive.engine.ThrottledLo
gger (log) - rcs:cpci9110:wf_6_a: 145 overruns
2014-10-22 10:14:51.659 警告 [Thread 51] org.csstudio.archive.engine.ThrottledLo
gger (log) - rcs:cpci9110:wf_6_a: 6 overruns
... More messsages suppressed for 1.00 days ....
Exception in thread "qtp1943325854-30" Exception in thread "WriteThread" java.la
ng.OutOfMemoryError: GC overhead limit exceeded
        at java.util.ArrayList.iterator(Unknown Source)
Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i
n thread "qtp1943325854-30"

Exception in thread "qtp1943325854-43" java.lang.OutOfMemoryError: GC overhead l
imit exceeded
        at sun.util.locale.BaseLocale.getInstance(Unknown Source)
        at java.util.Locale.getInstance(Unknown Source)
        at java.util.ResourceBundle$Control$CandidateListCache.getDefaultList(Un
known Source)
        at java.util.ResourceBundle$Control$CandidateListCache.createObject(Unkn
own Source)
        at java.util.ResourceBundle$Control$CandidateListCache.createObject(Unkn
own Source)
        at sun.util.locale.LocaleObjectCache.get(Unknown Source)
        at java.util.ResourceBundle$Control.getCandidateLocales(Unknown Source)
        at sun.util.resources.LocaleData$LocaleDataResourceBundleControl.getCand
idateLocales(Unknown Source)
        at java.util.ResourceBundle.getBundleImpl(Unknown Source)
        at java.util.ResourceBundle.getBundle(Unknown Source)
        at sun.util.resources.LocaleData$1.run(Unknown Source)
        at sun.util.resources.LocaleData$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.util.resources.LocaleData.getBundle(Unknown Source)
        at sun.util.resources.LocaleData.getDateFormatData(Unknown Source)
        at java.text.DateFormatSymbols.initializeData(Unknown Source)
        at java.text.DateFormatSymbols.<init>(Unknown Source)
        at sun.util.locale.provider.DateFormatSymbolsProviderImpl.getInstance(Un
known Source)
        at java.text.DateFormatSymbols.getProviderInstance(Unknown Source)
        at java.text.DateFormatSymbols.getInstance(Unknown Source)
        at java.util.Calendar.getDisplayName(Unknown Source)
        at java.text.SimpleDateFormat.subFormat(Unknown Source)

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i
n thread "WriteThread"
Exception in thread "qtp1943325854-36" Exception in thread "qtp1943325854-61" Ex
ception in thread "qtp1943325854-31" Exception in thread "pool-1-thread-1"
Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i
n thread "pool-1-thread-1"
Exception in thread "pool-1-thread-3" java.lang.OutOfMemoryError: GC overhead li
mit exceeded
Exception in thread "qtp1943325854-41" java.lang.OutOfMemoryError: GC overhead l
imit exceeded
Exception in thread "qtp1943325854-65" Exception in thread "qtp1943325854-29" Ex
ception in thread "Thread-1" Exception in thread "qtp1943325854-35" Exception in
thread "qtp1943325854-58" Exception in thread "qtp1943325854-59" java.lang.OutO
fMemoryError: GC overhead limit exceeded
Exception in thread "qtp1943325854-45"
Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i
n thread "qtp1943325854-45"
Exception in thread "qtp1943325854-60" java.lang.OutOfMemoryError: GC overhead l
imit exceeded
Exception in thread "qtp1943325854-57" Exception in thread "qtp1943325854-53" ja
va.lang.OutOfMemoryError: GC overhead limit exceeded
java.lang.OutOfMemoryError: GC overhead limit exceeded
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject
.addConditionWaiter(Unknown Source)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject
.awaitNanos(Unknown Source)
        at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.jav
a:342)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThre
adPool.java:526)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.access$600(QueuedThrea
dPool.java:44)
        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool
.java:572)
        at java.lang.Thread.run(Unknown Source)
Exception in thread "qtp1943325854-71" java.lang.OutOfMemoryError: GC overhead l
imit exceeded
java.lang.OutOfMemoryError: GC overhead limit exceeded
java.lang.OutOfMemoryError: GC overhead limit exceeded
java.lang.OutOfMemoryError: GC overhead limit exceeded
java.lang.OutOfMemoryError: GC overhead limit exceeded

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler i
n thread "qtp1943325854-29"
Exception in thread "com.cosylab.epics.caj.util.Timer" java.lang.OutOfMemoryErro
r: GC overhead limit exceeded

-----原始邮件-----
发件人: "Johnson, Andrew N." <anj@aps.anl.gov>
发送时间: 2014年10月21日 星期二
收件人: "龙巍" <longw@ihep.ac.cn>
抄送: "tech-talk@aps.anl.gov" <tech-talk@aps.anl.gov>
主题: Re: Problem with CSS archive engine

By default a VxWorks IOC tries to synchronize its OS clock with an NTP server running on its boot host, but if you have NTP available from a different IP address you can configure that by setting the environment variable EPICS_TS_NTP_INET. You may also need to set the EPICS_TIMEZONE variable to your local timezone, see the comments in the base/configure/CONFIG_SITE_ENV file for details of the format of that variable.

- Andrew

--
Sent from my iPad

On Oct 21, 2014, at 10:50, 龙巍 <longw@ihep.ac.cn> wrote:

hello Ralph,
Thanks for your suggestions,I got the date from the IOC shell:
->date
1990/01/02 00:45:24.212000

Just like you said, the IOC was not able to synchronize its time. But I
don't know how to do.
Can you give me some advice?

And, there is a warning when the IOC start:
############################################################################
## EPICS R3.14.12.1 $Date: Tue 2011-04-26 15:36:19 -0500$
## EPICS Base built May 30 2014
############################################################################
WARNING: OS Clock time was read before being set.
Using 1990-01-02 00:00:00.000000 UTC
iocRun: All initialization complete

Our IOC runs on the VxWorks OS system.
So .. is anyone know how to set the OS Clock time?





References:
Re: Problem with CSS archive engine 龙巍
Re: Problem with CSS archive engine Johnson, Andrew N.
Re: Problem with CSS archive engine 龙巍
Re: Problem with CSS archive engine Kasemir, Kay

Navigate by Date:
Prev: read waveform data using ca_create_subscription 吴煊
Next: RE: galil softIOC lose the galil controller Mark Clift
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019 
Navigate by Thread:
Prev: Re: Problem with CSS archive engine Kasemir, Kay
Next: License or copyright for the naming module in DISCS Jeong Han Lee
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019 
ANJ, 17 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·