Commit Graph

716 Commits

Author SHA1 Message Date
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
Michael Davidsaver 81917352f1 pacify gcc 12 with -Wnoexcept 2023-07-17 09:30:37 -07:00
Michael Davidsaver f9f11706a7 initialize protoTCP 2023-07-17 09:30:37 -07:00
Michael Davidsaver 522434c1dd server: op->error() dispatch
Avoid blocking in error()
2023-07-17 09:30:37 -07:00
Michael Davidsaver 8e4c1d43d0 minor 2023-07-11 17:22:23 -07:00
Michael Davidsaver f260fa2774 fix shared_array output limit off by one 2023-06-18 10:07:16 -07:00
Michael Davidsaver 2a83e49ae7 redo tree formatting 2023-06-18 10:07:16 -07:00
Michael Davidsaver 8ea613cb07 misc. 2023-06-14 11:26:31 -07:00
Michael Davidsaver 6555e98d48 make some reservations 2023-06-14 11:26:31 -07: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 7e32389637 StructTop::members avoid resize() 2023-06-14 11:26:31 -07:00
Michael Davidsaver 05a9d845ca move SockAttach to UDPManager::Pvt 2023-06-14 11:26:31 -07:00
Michael Davidsaver b95b57945b cleanup clang-y static analysis
Some performance improvements.  eg. pass by ref.

Some paranoia pre-initialization of variables
which will be initialized later by indirection.

And some misc. cleanup.
2023-06-12 19:55:03 -07:00
Michael Davidsaver e077e9663c missing 'throw' 2023-06-12 19:55:03 -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 5f8006fbf3 fix MCastMembership::operator< 2023-05-16 20:58:01 -07:00