Michael Davidsaver
f948a4fbb0
client: log invalid monitor queueSize
2025-06-11 15:32:47 -07:00
Michael Davidsaver
a7d761d507
fix spelling
2024-10-13 17:38:28 -07:00
Michael Davidsaver
8acd4fa5ea
client: consolidate cache_sync()
2023-09-25 18:50:26 -07:00
Michael Davidsaver
68cc69b984
client: propagate exception during early op. setup
2023-09-11 10:37:00 +02:00
Michael Davidsaver
f20d958c46
client: avoid assert() with invalid forceServer
...
op->chan may not be set if Channel::build() throws.
eg. if forced server name is invalid for connect().
2023-09-11 10:37:00 +02:00
Michael Davidsaver
3bfead3367
fixup copyable
...
Ensure type with vtable (excluding exceptions) are not copyable.
2023-06-14 11:26:31 -07:00
Michael Davidsaver
81194fac75
client: avoid unnecessary test.
...
update always consumed prior to this test.
triggers use-after-move even though update
is well defined.
2023-06-12 19:55:03 -07:00
Michael Davidsaver
2247c20bee
quiet MONITOR exceeds window size
...
The destroy message triggers a spurious ERR.
2023-05-16 20:57:51 -07:00
Michael Davidsaver
a36dd2a9cc
fix monitor pipeline and finish()
2023-05-12 09:29:25 -07:00
Michael Davidsaver
a4e974def9
client: fix batch pop() of exception
2023-05-11 10:50:08 -07:00
Michael Davidsaver
aef69c9f25
redo INST_COUNTER
...
Allow for use by pvxsIoc
2023-05-09 22:24:19 -07:00
Michael Davidsaver
303bc61079
apply loc_bad_alloc to owned_ptr
...
Distinguish location of owned_ptr failure
2023-03-28 15:21:39 -07:00
Michael Davidsaver
92fb0a4afa
client: fix delta sync of Compound
...
cf. cc5d382930
2023-03-26 18:14:21 -07:00
Michael Davidsaver
36e537e479
appease -Wnoexcept
2023-03-20 09:41:41 -07:00
Michael Davidsaver
6f770d0ea3
final-ize some derived types
2023-03-20 09:41:41 -07:00
Michael Davidsaver
cc5d382930
client: monitor yield "complete" updates
...
Populate unchanged fields with most recently received value.
2022-11-27 08:20:13 -08:00
Michael Davidsaver
4141775c71
client: add non-intrusive free-list for subscription queue
2022-11-27 08:20:13 -08:00
Michael Davidsaver
febc823301
Client subscription add batch pop() and stats()
2022-11-27 08:20:13 -08:00
Michael Davidsaver
0d5a3f62e1
client: fix locking of monitor members during pop()
...
more care needed with data members called
during pop() by user thread.
2022-10-14 10:20:51 -07:00
Michael Davidsaver
7610575c50
reduce "non-existent IOID" noise
...
Note later if a decode fault occurs
2022-10-14 10:20:51 -07:00
Michael Davidsaver
298689a654
minor
2022-06-14 10:33:11 -07:00
Michael Davidsaver
cce797263d
fix handling of pva_ctrl_msg::SetEndian
2022-05-18 10:32:16 -07:00
Michael Davidsaver
85285546b2
fix Subscription::shared_from_this()
...
was leaking internal ref. which had to be disposed on client worker
2021-09-13 19:24:07 -07:00
Michael Davidsaver
c503eece31
spell check
2021-08-13 15:18:31 -07:00
Michael Davidsaver
5d3a21f030
client Channel search bypass
...
Bypass the broadcast search phase and directly connect
to a specific server and issue CMD_CREATE_CHANNEL.
Note, due to pvAccessCPP buggyness, this can only be relied
upon to connect with the unadvertised magic 'server' PV.
2021-07-03 13:20:20 -07:00
Michael Davidsaver
d3a38b3a21
Label Expert API
2021-06-27 10:17:14 -07:00
Michael Davidsaver
7170d6dd40
minor
2021-06-27 10:17:14 -07:00
Michael Davidsaver
8555bb63ef
client cancel() w/ tryCall()
...
Fail soft if worker thread has already stopped.
2021-06-27 10:17:14 -07:00
Michael Davidsaver
9d128b2f8a
more onInit() error handling
2021-06-27 10:17:13 -07:00
Michael Davidsaver
db32f05ce1
client: allow replacing event handler (eg. during onInit())
2021-06-27 10:17:13 -07:00
Michael Davidsaver
3dd4dd6a66
client: different onInit() for monitor
2021-06-27 10:17:13 -07:00
Michael Davidsaver
8246a64806
client: monitor connect autoExec()
2021-06-27 10:17:13 -07:00
Michael Davidsaver
cd990fb459
reExecGet/Put()
2021-06-27 10:17:13 -07:00
Michael Davidsaver
708fbc8062
client: add *Builder::syncCancel(bool)
...
Option for asynchronous cancel (eg. implicitly through ~Operation).
2021-06-27 10:17:13 -07:00
Michael Davidsaver
c4d2cd4a10
client: reorg context Pvt
2021-06-27 10:17:13 -07:00
Michael Davidsaver
60d275412f
conn/chan tx/rx stat tracking
2021-06-27 10:17:13 -07:00
Michael Davidsaver
89f9c54d62
client: relax exec() synchronization
...
dispatch() instead of call().
2021-06-08 09:45:49 -07:00
Michael Davidsaver
346b79d3b7
Add Subscription::shared_from_this()
...
Allow event() handler to acquire a shared_ptr<Subscription>
to eg. queue for later processing.
2021-06-08 09:45:49 -07:00
Michael Davidsaver
fb9f356457
client reExec() for Get
2021-06-08 09:45:49 -07:00
Michael Davidsaver
2972bd8205
client: add onInit hook
2021-06-08 09:45:49 -07:00
Michael Davidsaver
21d9cb6b1c
fix monitor queue locking
2021-03-16 18:45:43 -07:00
Michael Davidsaver
e9ce80880d
remote file:line from decode errors
2021-01-12 11:32:10 -08:00
Michael Davidsaver
76764cf978
xcode: capture file:line of fault()
2021-01-12 11:32:10 -08:00
Michael Davidsaver
b2b264ee9b
client: fix monitor INIT error handling
...
data payload only present on success
2021-01-07 11:06:49 -08:00
Michael Davidsaver
56054a8e62
Add Subscription::name()
2020-11-05 22:08:06 -08:00
Michael Davidsaver
3fc91f2cad
minor
2020-08-10 12:09:55 -07:00
Michael Davidsaver
4fac067287
client: monitor avoid extra wakeups
2020-08-10 12:09:55 -07:00
Michael Davidsaver
7a25744807
minor
2020-08-10 12:09:55 -07:00
Michael Davidsaver
e52397fb63
Operation::cancel() return true if cancelled
2020-08-10 12:09:55 -07:00
Michael Davidsaver
33b6f362db
client: Handle orphaned Operations
...
Allow Operation instances to outlive
the Context through which they were
created.
2020-08-10 12:09:55 -07:00