Changelog

New Features, Improvements & Bug fixes

  • [ FESA-5346] - Fixed a mutex alignment problem that could under very specific circumstances create a spin-lock and make the FEC unresponsive. The problem was visible only if one had at least N+1 concurrency layers on a N-CPU system (typ. 2) and that those layers were at different priorities. In this situation, there was a likelihood that, while a low-priority concurrency layer was swapping the setting double buffer (critical section), two high-priority concurrency layers tried to enter the same critical section. This would lead to the high-priority threads to spin-lock on the mutex and freeze the system. The spin-lock phenomenon was due to the pthread_mutex_t structure to be misaligned during the shared memory mapping. As the critical section is very short, the likelihood was small but not null. The problem was visible for both mixed and split modes.
  • [ FESA-5402] - Fixed the conversion of const data pointer to non-const data pointer in RTEquipmentGen/ServerEquipmentGen (GCC 4.9 error)
  • [ FESA-5401] - Fixed the migration of string constants
  • [ FESA-2971] - Fixed the diagnostic logging in split mode
  • [ FESA-3581] - Fixed a problem which caused, after disabling an onDemandEventSource, reception of one spurious event
  • [ FESA-3726] - Improved the documentation of value items of diagnostic property
  • [ FESA-3734] - Fixed the triggering diagnostic setting event
  • [ FESA-3885] - Fixed a problem which made disabled event sources keep accumulating events
  • [ FESA-3906] - Fixed the state-enum mapping values to strings
  • [ FESA-3952] - Ensured the manual on-demand triggering will work on as recent as possible data
  • [ FESA-4123] - Improved support for optional logical events not mapped in the instance file (C++ fwk; remains to be done at DB level)
  • [ FESA-4509] - Added Context support when using OnSubscriptionEventSource
  • [ FESA-4555] - Improved the corruption detection in the RollingBufferMuxDataManager (throw an exception if there is something wrong with currentPosition_)
  • [ FESA-4589] - Reviewed and improved the cycle selector validation for get/set/monitorOn
  • [ FESA-4714] - Fixed a corruption of the persistance file for uint8_t arrays
  • [ FESA-5011] - Fixed the generated path for scheduling view of the classes that are taken from the release repository
  • [ FESA-5043] - Fixed a problem which made FILE / LINE / ErrorCode info not to be displayed when using the wrong constructor of FesaException
  • [ FESA-5047] - Fixed a bug that was preventing direct calls to fesa::Property::get(fesa::AbstractDevice& device, const std::string& cycleSelector, const PropDataType& value)
  • [ FESA-5095] - Added a constraint preventing to add default set-server actions with manual notifications
  • [ FESA-5195] - Fixed a bug in the set methods for string arrays
  • [ FESA-5274] - Allows gets on data-consistent acquisition fields in specific init
  • [ FESA-5280] - Fixed a problem with indices of enumerations in TypeDefinition.h
  • [ FESA-5297] - Fixed the order of linker flags in Make.deployunit
  • [ FESA-5366] - Fixed a dependency problem in the deploy-unit makefiles that made the first compilation with -j fail
  • [ FESA-3415] - Added a check for validity of custom enumeration values in custom scalars/arrays/arrays 2D
  • [ FESA-4500] - Fixed the English grammar in log messages produced by on-demand-event-related code
  • [ FESA-4904] - Improve memory handling in FieldExpression
  • [ FESA-4967] - Made the class name and version elements in the global instance configuration optional
  • [ FESA-5042] - Added PostMortem as dependency in fesa-fwk to ensure version consistency
  • [ FESA-5142] - Changed the default of the fields data-consistent to false during migration
  • [ FESA-5251] - Improved asynchronous gets time-stamping and data-consistency
  • [ FESA-3835] - Improved the responsiveness of persistency requests . Now there are processed immediately instead of with a 30 secs delay
  • [ FESA-3570] - Added configuration flag in fesa.cfg for persistency delay
  • [ FESA-4563] - Added support for multi-threaded custom event source
  • [ FESA-5377] - Provided a watchdog service to trigger process abort in case of problem
  • [ FESA-932] - Reviewed the exception messages for clarity
  • [ FESA-5279] - Added a checkInput method in ServerAction to check the in/outgoing values. Only for incoming enums for the moment

Internal improvements

The items listed here should not have any effect on the users and are given for the sake of completeness
  • [ FESA-833] - XML Parser allocates and returns pointers, which need to be deleted "by hand"
  • [ FESA-5062] - Provided a Finally class
  • [ FESA-1579] - Made Sorting-Expression Thread-Safe

Detailed changelog FESA3 FWK

* changelog fesa-core
* changelog fesa-core-gsi
* changelog fesa-codegen
* changelog fesa-codegen-gsi
* changelog fesa-model
* changelog fesa-model-gsi

-- SolveighMatthies - 24 Mar 2014
Topic revision: r2 - 12 May 2014, SolveighMatthies
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback