Get an a monitor callback with status != ECA_NORMAL when trying to
access a large array (count=262144, type=DBF_LONG) even though
EPICS_CA_MAX_ARRAY_BYTES is 1048600 (or even as large as 2048000).
This happens with MEDM and Camonitor, but not with Caget. It happens
with several PVs of the same count.
Additional information:
The MEDM message is:
Fri Jun 10 18:06:24 CDT 2005
medmUpdateChannelCb: Bad status [72] for cf2:turn:gtr:waveform0: The requested data transfer is greater than available memory or EPICS_CA_MAX_ARRAY_BYTES
The stack trace (note values for count and max_bytes) is:
[1] medmUpdateChannelCb(args = RECORD), line 765 in "medmCA.c"
[2] oldSubscription::exception(this = 0x404dc8, guard = CLASS, status = 72, _ARG4 = 0x36d128 "server unable to load read (or subscription update) response into protocol buffer PV="cf2:turn:gtr:waveform0" max bytes=1048600", type = 19U, count = 262144U), line 92 in "oldSubscription.cpp"
[3] netSubscription::exception(this = 0x409dd8, guard = CLASS, recycle = CLASS, status = 72, pContext = 0x36d128 "server unable to load read (or subscription update) response into protocol buffer PV="cf2:turn:gtr:waveform0" max bytes=1048600", typeIn = 19U, countIn = 262144U), line 128 in "netSubscription.cpp"
[4] cac::ioExceptionNotify(this = 0x2c3c50, idIn = 2U, status = 72, pContext = 0x36d128 "server unable to load read (or subscription update) response into protocol buffer PV="cf2:turn:gtr:waveform0" max bytes=1048600", type = 19U, count = 262144U), line 687 in "cac.cpp"
[5] cac::eventAddExcep(this = 0x2c3c50, _ARG2 = CLASS, _ARG3 = CLASS, hdr = STRUCT, pCtx = 0x36d128 "server unable to load read (or subscription update) response into protocol buffer PV="cf2:turn:gtr:waveform0" max bytes=1048600", status = 72U), line 947 in "cac.cpp"
=>[6] cac::exceptionRespAction(this = 0x2c3c50, cbMutexIn = CLASS, iiu = CLASS, _ARG4 = CLASS, hdr = STRUCT, pMsgBdy = 0x36d110), line 1030 in "cac.cpp"
[7] cac::executeResponse(this = 0x2c3c50, mgr = CLASS, iiu = CLASS, currentTime = CLASS, hdr = STRUCT, pMshBody = 0x36d110 ""), line 1124 in "cac.cpp"
[8] tcpiiu::processIncoming(this = 0x366ba8, currentTime = CLASS, mgr = CLASS), line 1188 in "tcpiiu.cpp"
[9] tcpRecvThread::run(this = 0x366c64), line 527 in "tcpiiu.cpp"
[10] epicsThreadCallEntryPoint(pPvt = 0x366c68), line 59 in "epicsThread.cpp"
[11] start_routine(arg = 0x365348), line 301 in "osdThread.c"
Original Mantis Bug: mantis-203
http://www.aps.anl.gov/epics/mantis/view_bug_page.php?f_id=203
The server is respnding with an ECA_TOLARGE exception