diff --git a/RELEASE_NOTES.html b/RELEASE_NOTES.html index 7a8f2962a..ad3176d49 100644 --- a/RELEASE_NOTES.html +++ b/RELEASE_NOTES.html @@ -9,22 +9,51 @@
dbEvent bug
-The bug reported for the previous release has been fixed.
-config changes
+The bug exists in EPICS 3.13.5, 3.13.6, 3.13.7
+ +An IOC core CA server thread is found to be using excessive CPU possibly +at elevated priority resulting from vxWorks priority inheritance scheduling. +All attached CA clients will permanently disconnect from the IOC, and record +processing may be disrupted if the threads priority is elevated. Elevated +priority was observed in the one situation where the bug has been reproduced +and identified so far.
+ +This bug will occur only in circumstances where the CA client deletes a +monitor subscription and the client's CA event queue in iocCore is 100% full. +Since there is always space for each monitor subscription to place at least +one update on the queue then the queue can only be full if *all* +subscriptions for a particular client are sending subscription update events +at a rate that is faster than the client is reading them. Therefore, +specialized clients that have a small number of regularly updated +subscriptions and that do not regularly call ca_poll() or ca_pend_event() are +more likely to reproduce the problem.
+ +IOC resident CA server
Scope: The bug is present only in the IOC resident CA server. It was introduced in R3.13.6, and will be more likely to occur when there - is a particularly heavy Channel Access put callback load.
+ is a particularly heavy Channel Access put callback load.dbCommon.dbd
-UDF how has a promptgroup. This allows database configuration tools to mset UDF false.
+UDF how has a promptgroup. This allows database configuration tools to +mset UDF false.
mbboRecord
-Field VAL now has a cvt_dbaddr method. -If any state strings are defined the field type and dbr_field_type are declared ENUM. If no state strings are defined then the type is USHORT. Previously the types were always ENUM.
+Field VAL now has a cvt_dbaddr method. If any state strings are defined +the field type and dbr_field_type are declared ENUM. If no state strings are +defined then the type is USHORT. Previously the types were always ENUM.
camacDev
--ai and ao now support special_linconv. NOTE: NOT TESTED.
+ +ai and ao now support special_linconv. NOTE: NOT TESTED.
drvGpib.c
+Add some cacheFlush statements
aiRecord and aoRecord: Setting eoff=egul
@@ -58,14 +90,13 @@ ai and ao now support special_linconv. NOTE: NOT TESTED.Instead of init_record executing code like
if ((pai->linr == menuConvertLINEAR) && pdset->special_linconv) {
pai->eoff = pai->egul;
- }
-
+ }
It now executes:
if ((pai->eslo==1.0) && (pai->eoff==0.0)) {
pai->eoff = pai->egul;
- }
-
+ }
+
aoRecord has a similar change
This was done so that old device support which does not implement @@ -74,8 +105,9 @@ special_linconv still works.
CA puts to disabled record
If a CA client issues a put to a disabled record then, when the record is -enabled, database puts to the record will not make the record process until -a CA put is again issued. This is fixed
+enabled, database puts to the record will not make the record process until a +CA put is again issued. This is fixed +dbb - database breakpoints
The database breakpoint facility was not working. This has probably been @@ -125,10 +157,11 @@ occur when recGblGetTimeStamp is called.
CA server (rsrv)
-Fixed race condition occuring when a put notify is canceled by a ca_clear_channel at the same instant that it completes. This problem was introduced in -R3.13.5.
+Fixed race condition occuring when a put notify is canceled by a +ca_clear_channel at the same instant that it completes. This problem was +introduced in R3.13.5.
-dbNotify
@@ -237,7 +270,7 @@ code. -convertRelease and checkRelease
@@ -386,9 +419,9 @@ put is successful. Previosuly it was always called.devVXStats
-Improved algorithm for cpuUsage.
+Improved algorithm for cpuUsage
-Symptom: CA clients on all versions of EPICS with unresolved channels @@ -453,7 +486,7 @@ powerPCs. The values are now initialized to 0.
There was a bug when converting ascii string format to time stamp. The bug @@ -858,9 +891,9 @@ of the calcout record were made.
devAaoCamac.c
-This had an error that prevented it from compiling.
+This had an error that prevented it from compiling
-If either of the environment variables EPICS_IOC_LOG_PORT or @@ -964,7 +997,7 @@ href="http://www.aps.anl.gov/asd/controls/epics/EpicsDocumentation/AppDevManuals IOC Applications: Building and Source/Release Control" provides guidlines for developing applications with 3.13.
-