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, 龙巍 <[email protected]>
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." <[email protected]>
发送时间: 2014年10月21日 星期二
收件人: "龙巍" <[email protected]>
抄送: "[email protected]" <[email protected]>
主题: 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, 龙巍 <[email protected]> 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?