In osdThread.c for POSIX if pthread_create_key fails
In iocLogServer.c if fdmgr_init returns NULL
In dbBkpt.c if semaphore creation fails while adding a bp to a lockset
In devSiSoftCallback.c if linked record is not found
* github/pr/99:
fix an out-dated comment in the array filter code
add macro dbfl_pfield to db_field_log.h and use it in dbGet
fix in dbGet: decide use of db_field_log based on whether it has copy or not
add macro dbfl_has_copy to db_field_log.h and use it in dbAccess.c
refactor db_field_log and filters to get rid of dbfl_type_rec
make it clearer what the result of wrapArrayIndices will be
The Soft Channel device support requests pass-1 initialization.
It no longer needs to initialize the INP link or allocate the
array buffer itself, these are taken care of elsewhere.
The record code uses PACT to remember that the device must be
initialized again in pass 1.
This fixes github issue #97:
Reading into an aai record from a compress or histogram or subArray record
could cause a segfault if the aai record was initialized before the
linked one.
This refactor simplifies and streamlines the code associated with server
side filters. Apart from immediate benefits (clearer code, less duplication)
it is also hoped that this will make it easier to add write filters.
The data pointer dbfl_ref.field can now either point to a copy owned by a
filter, or it can point to the original data owned by a record. In the
latter case, the dbfl_ref.dtor is NULL.
The dbExtractArray* functions are unified to the single function
dbExtractArray and stripped of conversion functionality. This is redundant
because we always call dbGet after applying filters, which takes care of
conversion. Accordingly, dbChannelMakeArrayCopy is now obsolete and its
single use (in the ts filter) replaced with dbExtractArray. Instead, we add
the helper function dbChannelGetArrayInfo to wrap the common boilerplate
around calls to the get_array_info method, used in both arr.c and ts.c.
* lp-zimoch/dbChannelForDBLinks: (43 commits)
add tests for empty array filter results
Fix linkFilterTest, move Release Notes to the right place
do not handle empty arrays (undefined behavior)
Revert "new error code for empty arrays"
test code beautification
make db_init_event_freelists private
remove unnecessary check
remove needless pointer access
new error code for empty arrays
clean up code structure
Release notes updated
set number of planned link filter tests
removed unnecessary recGblSetSevr call
re-order link filter tests to alternate between success and failure
unused variable removed
Revert "fix crash in PINI: use local db_field_log"
initialize free lists when starting dbChannel
db link filter tests added
bugfix: dbGet should not crash because of empty array requests
fix crash in PINI: use local db_field_log
...
# Conflicts:
# documentation/RELEASE_NOTES.md
* githubbhill/timestamp-before-outlink:
Update RELEASE_NOTES for timestamp-before-outlink
Patch record processing routines to update timestamp before processing outlinks