Michael Davidsaver
91fed88cdd
"Beacon tx error" show destination
2025-03-31 13:55:19 -07:00
Joao Paulo Martins
542e0fe9f0
Changed Float32 and Float64 to Float32A and Float64A in the NTNDArray TypeDef
2025-03-31 00:11:08 -04:00
Michael Davidsaver
49c9d82053
drop unused IfaceMap
2025-02-12 17:48:18 -08:00
Michael Davidsaver
c870415908
fix formatting of uint8 and int8 fields
...
where being rendered as 'char'
2025-01-30 12:34:01 -08:00
Michael Davidsaver
ff1d6510cb
reduce Search tx log spam
...
eg. if an interface disappears.
2025-01-19 12:07:40 -08:00
Michael Davidsaver
c3e91f60be
client: defer notification of connect() failure
...
... to bevEvent() callback to handle early failure
the same as later disconnect.
2024-12-22 16:55:58 -05:00
Michael Davidsaver
a7d761d507
fix spelling
2024-10-13 17:38:28 -07:00
Anze Zagar
92d519702f
client: search retry step reset on channel reconnection ( fixes epics-base/pvxs#84 )
2024-10-01 08:28:53 -07:00
Michael Davidsaver
a3a685ba2b
server: correctly adjudicate collision bind() of specific port
...
On Linux (at least) SO_REUSEADDR, which allows a new listener to
bind while an existing sock is in FIN-WAIT. Apparently this allows
any number of sockets to bind(), but only when listen() to succeed.
Further, on Linux there is a known documented race condition which
can result in all listen() failing. It isn't clear how to handle
this case without a potentially infinite loop, so ignore it.
If this happens, then eg. no PVA server will get port 5075.
So when probing for another listener, it is necessary to enter the
listening state. When this fails, the socket is no longer usable
for another bind(), so it is necessary to allocate another for the
next attempt.
2024-08-14 17:53:36 -07:00
Michael Davidsaver
330097b7d4
cache_sync() copy Any/Union
...
Delta may be later be changed by user code,
so copy to ensure cache is not modified.
cf. 92fb0a4afa
2024-08-01 15:46:31 -07:00
Michael Davidsaver
bc6d3cc6b5
doc
2024-07-31 21:47:08 -07:00
Michael Davidsaver
9b77c061b0
Timeout exception should say "Timeout"
2024-04-22 07:55:13 -07:00
Michael Davidsaver
4bd884719e
Workaround TCP_NODELAY error on winsock
...
Apparently winsock does not like setsockopt()
concurrently to async connect(). So delay
NODELAY until after connected.
2024-03-29 15:31:53 -07:00
Michael Davidsaver
615e49a978
doc
2024-03-29 15:25:54 -07:00
Michael Davidsaver
c2e5fdca55
client: avoid FD leak on failed connect()
...
Async connect() can fail immediately in some cases.
2024-02-22 09:48:21 -08:00
Michael Davidsaver
7e6463c200
codespell
2023-11-21 12:20:34 -08:00
Michael Davidsaver
be7fab5192
server: explicit move ctor
...
The default seems to copy the shared_ptr member?
2023-11-20 10:59:44 -08:00
Michael Davidsaver
b8f42dc0e7
optimize (slight) string serialization
...
w/ memcpy()
2023-11-11 08:15:12 -08:00
Michael Davidsaver
87322ef64c
disambiguate Size from Selector
2023-11-11 08:15:12 -08:00
Michael Davidsaver
a6b3eb58bd
add missing check on invalid Union[] selector
2023-11-11 08:15:12 -08:00
Michael Davidsaver
17464a117a
disallow "null" size by default
...
pvDataCPP only explicitly checks for "null" size (-1)
for Union, where it indicates the implicit "null" arm.
Also string, where "null" is equivalent to zero length string.
2023-11-08 16:18:20 -08:00
Michael Davidsaver
2a56a08516
set TCP_NODELAY
...
Turns out, this can make a difference in some situations.
2023-11-07 14:08:56 -08:00
Michael Davidsaver
28f785db6f
server: minor
2023-10-23 16:51:35 -07:00
Michael Davidsaver
9b55ff33be
minor logging
2023-10-16 12:20:57 -07:00
Michael Davidsaver
a9eea922b5
Relax when assigning struct[] or union[] of similar
...
Attempt copy with partial assignment.
2023-10-03 20:45:28 -07:00
Michael Davidsaver
7211143b10
server: relax post() after finish()
...
ignore re-finish()
2023-10-03 20:43:41 -07:00
Michael Davidsaver
9b099be0d8
server: release bound callbacks on cleanup()
...
The now Dead Op may still be held by user code.
Ensure that cleanup() leaves that Op in a state
where it can be safely dtor()ed from any thread.
2023-10-03 20:43:41 -07:00
Michael Davidsaver
c4327022c9
server: make MonitorOp::doReply() static
...
avoids need for shared_from_this().
2023-10-03 20:43:41 -07:00
Michael Davidsaver
e09f901e72
client: fix _reExecPut() allowed for .get()
...
copy+paste...
2023-10-01 19:56:42 -07:00
Michael Davidsaver
d8f7de8c8c
client: GET yield complete
2023-09-25 18:50:26 -07:00
Michael Davidsaver
8acd4fa5ea
client: consolidate cache_sync()
2023-09-25 18:50:26 -07:00
Michael Davidsaver
de63ec4496
doc
2023-09-12 19:30:27 +02: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
0274358453
1.2.3
PVXS Python / win64 3.10 (push) Failing after 1s
PVXS Python / win64 3.11 (push) Failing after 1s
PVXS Python / win64 3.5 (push) Failing after 1s
PVXS Python / win64 3.6 (push) Failing after 1s
PVXS Python / win64 3.7 (push) Failing after 1s
PVXS Python / win64 3.8 (push) Failing after 1s
PVXS Python / win64 3.9 (push) Failing after 1s
PVXS EPICS / Native Linux with 3.14 (push) Failing after 2s
PVXS EPICS / Native Linux with 3.15 (push) Failing after 2s
PVXS EPICS / Native Linux with clang (push) Failing after 1s
PVXS EPICS / Native Linux (libc++ debug) (push) Failing after 2s
PVXS EPICS / Native Linux (WError) (push) Failing after 1s
PVXS EPICS / Native Linux (c++17) (push) Failing after 2s
PVXS EPICS / Native Linux with libevent stable (push) Failing after 1s
PVXS EPICS / Cross mingw64 DLL (push) Failing after 2s
PVXS EPICS / Cross mingw64 static (push) Failing after 2s
PVXS EPICS / Native Linux with 7.0.2 (push) Failing after 2s
PVXS EPICS / Linux centos 7 (push) Failing after 1s
PVXS EPICS / Linux fedora latest (push) Failing after 2s
PVXS Python / linux64 test (push) Failing after 1s
PVXS Python / linux 2.7 i686 (push) Failing after 7s
PVXS Python / linux 2.7u i686 (push) Failing after 7s
PVXS Python / linux 3.5 i686 (push) Failing after 7s
PVXS Python / linux 3.6 i686 (push) Failing after 7s
PVXS Python / linux 3.7 i686 (push) Failing after 7s
PVXS Python / linux 3.8 i686 (push) Failing after 7s
PVXS Python / linux 3.9 i686 (push) Failing after 7s
PVXS Python / linux 2.7 amd64 (push) Failing after 7s
PVXS Python / linux 2.7u amd64 (push) Failing after 7s
PVXS Python / linux 3.5 amd64 (push) Failing after 7s
PVXS Python / linux 3.6 amd64 (push) Failing after 7s
PVXS Python / linux 3.7 amd64 (push) Failing after 7s
PVXS Python / linux 3.8 amd64 (push) Failing after 7s
PVXS Python / linux 3.9 amd64 (push) Failing after 7s
PVXS Python / linux 3.10 amd64 (push) Failing after 7s
PVXS Python / linux 3.11 amd64 (push) Failing after 7s
PVXS EPICS / OSX (push) Cancelled after 0s
PVXS EPICS / RTEMS5 (push) Cancelled after 0s
PVXS EPICS / vs2019 DLL (push) Cancelled after 0s
PVXS EPICS / vs2019 static (push) Cancelled after 0s
PVXS Python / osx 3.10 intel (push) Cancelled after 0s
PVXS Python / osx 3.11 intel (push) Cancelled after 0s
PVXS Python / osx 3.6 intel (push) Cancelled after 0s
PVXS Python / osx 3.7 intel (push) Cancelled after 0s
PVXS Python / osx 3.8 intel (push) Cancelled after 0s
PVXS Python / osx 3.9 intel (push) Cancelled after 0s
2023-09-07 09:33:42 +02:00
Michael Davidsaver
9a50df3163
NTTable helper actually claim to be NTTable...
2023-09-06 14:30:45 +02:00
Michael Davidsaver
e9ecf7e8dd
missing copyright boilerplate
2023-09-06 14:30:45 +02:00
Michael Davidsaver
d7e49605cc
threadOnce further reduce boilerplate
...
also latch failure
2023-09-04 16:17:25 +02:00
Michael Davidsaver
83e1966e93
ioc: fixup server singleton safety
2023-09-04 16:16:40 +02:00
Michael Davidsaver
45917dfdc8
update owned_ptr
...
owned_ptr ctor from nullptr
owned_ptr::acquire() to handle return through T** argument
owned_ptr use non-default deleter to avoid possible inappropriate use of delete operator.
2023-09-03 12:01:57 +02:00
Michael Davidsaver
a79eab92e8
improve message when request2mask() would select nothing
2023-09-02 11:14:07 +02:00
Michael Davidsaver
880616aace
clarify "no such member" message
2023-09-02 11:14:07 +02:00
Michael Davidsaver
92a7f324b8
Server print port
2023-09-02 11:14:07 +02:00
Michael Davidsaver
13d02530cf
Add NTTable helper
2023-08-31 10:46:43 +02:00
Michael Davidsaver
058b3c914b
add $PVXS_ENABLE_IPV6
2023-08-26 11:08:47 +02:00
Michael Davidsaver
9aa3755879
fix MPMCFIFO emplace()
...
Might pop() several while multiple writer waiting in push()
2023-08-23 11:25:45 +02:00
Michael Davidsaver
74fbc78ddf
colorize log levels
2023-08-12 15:57:44 -07:00
Michael Davidsaver
a2edecd492
consolidate version_information
2023-07-25 09:17:54 -07:00
Michael Davidsaver
f5657e5836
minor
2023-07-25 09:17:54 -07:00
Michael Davidsaver
3b8540f520
client: try to slow down reconnect loop
...
when TCP connection fails early.
2023-07-25 09:17:54 -07:00