Menu

#38 pvaSrv does not always get first monitor

4.5
closed
pvaSrv (12)
5
2015-06-10
2015-02-18
Ralph Lange
No

Reported from Marty Kraimer <mrkraimer_AT_comcast.net>:

In a message to me Matej said:

However I’ve noticed one thing… if I run exampleDatabase and then do

eget -m enum01

I do not get the first (immediate) monitor at all?
Do you get it ?

It was a problem in pvaSrv.
Note that it does not happen for local provider in pvDatabase.

The fix is:

mrk> pwd
/home/hg/pvaSrv/src/dbPv/3.14
mrk> hg diff dbPvMonitor.cpp
diff -r 00bf5c7e66fe src/dbPv/3.14/dbPvMonitor.cpp
--- a/src/dbPv/3.14/dbPvMonitor.cpp    Mon Feb 09 11:44:46 2015 -0600
+++ b/src/dbPv/3.14/dbPvMonitor.cpp    Wed Feb 18 07:07:40 2015 -0500
@@ -270,7 +270,7 @@
         }
         index = overrunBitSet->nextSetBit(index+1);
     }
-    if(bitSet->nextSetBit(0)>=0) {
+    if(firstTime || bitSet->nextSetBit(0)>=0) {
         nextElement =getFree();
         if(nextElement) {
             PVStructure::shared_pointer pvNext = nextElement->pvStructurePtr;
mrk>

Ralph,

Can you take care of this?
You may have a different way to fix the problem.

Marty

Discussion

  • Ralph Lange

    Ralph Lange - 2015-06-10

    Moved to GitHub (pvaSrv Issue #1)

     
  • Ralph Lange

    Ralph Lange - 2015-06-10
    • status: open --> closed