You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi there, I am unsure which of the two libraries is best to post this in as it could be a pvapy or a p4p issue but I thought I would post it here first, apologies if that's wrong!
I am running a PvaPy server and updating values internally within the server (see the code snippet below), in most cases only updating the value and timeStamp (see the code snippet below) fields (see the code snippet below).
At the moment this isn't too much of an issue but we are hoping to write more applications where it would be easier to identify the changedSet based on the results of this call rather than the user having to compare field equality on the application end each time.
Is there something extra we need to do on the server side to get this call right or is it possibly a difference in how the two libraries communicate?
I've attached a more complete example of the issue in Docker as a .zip file below to better illustrate the issue but for reference I am using Python 3.10 on Debian Linux with pvapy==5.3.1 and p4p==4.1.12 example.zip
Thanks in advance for your help!
The text was updated successfully, but these errors were encountered:
Thanks for the bug report. The problem is on the pvaPy side. The existing update() method updates entire record. The next release will contain method that will allow you to only update fields that have changed, e.g. something like this:
pv = PvObject({'x':INT, 'y':INT, 'z':FLOAT})
s = PvaServer()
s.addRecord('a', pv)
s.start()
for i in range(0,10):
x = int(random.uniform(0,100))
s.update('a', {'x' : x, 'y' : 2*x})
time.sleep(10)
Hi there, I am unsure which of the two libraries is best to post this in as it could be a pvapy or a p4p issue but I thought I would post it here first, apologies if that's wrong!
I am running a PvaPy server and updating values internally within the server (see the code snippet below), in most cases only updating the value and timeStamp (see the code snippet below) fields (see the code snippet below).
However, when I use
p4p
to monitor the PV, thechangedSet
seems to indicate that all of the fields have updated each time, which is not the case.Output:
At the moment this isn't too much of an issue but we are hoping to write more applications where it would be easier to identify the
changedSet
based on the results of this call rather than the user having to compare field equality on the application end each time.Is there something extra we need to do on the server side to get this call right or is it possibly a difference in how the two libraries communicate?
I've attached a more complete example of the issue in Docker as a
.zip
file below to better illustrate the issue but for reference I am using Python 3.10 on Debian Linux withpvapy==5.3.1
andp4p==4.1.12
example.zip
Thanks in advance for your help!
The text was updated successfully, but these errors were encountered: