Author: Strangolino, G.
Paper Title Page
TUPHA166 New Developments for the HDB++ TANGO Archiving System 801
 
  • L. Pivetta, G. Scalamera, G. Strangolino, L. Zambon
    Elettra-Sincrotrone Trieste S.C.p.A., Basovizza, Italy
  • R. Bourtembourg, S. James, J.L. Pons, P.V. Verdier
    ESRF, Grenoble, France
  • S. Rubio-Manrique
    ALBA-CELLS Synchrotron, Cerdanyola del Vallès, Spain
 
  TANGO HDB++ is a high performance event-driven archiving system which stores data with micro-second resolution timestamps, using archivers written in C++. HDB++ currently supports MySQL and Apache Cassandra back-ends but could be easily extended to support additional back-ends. Since the initial release many improvements and new features have been added to the HDB++. In addition to bug-fixes and optimizations, the support for context-based archiving allows to define an archiving strategy for each attribute, specifying when it has to be archived or not. Temporary archiving is supported by means of a time-to-live parameter, available on a per-attribute basis. The Cassandra back-end is using Cassandra TTL native feature underneath to implement the time-to-live feature. With dynamic loading of specific libraries switching back-ends can be done on-the-fly and is as simple as changing a property. Partition and maintenance scripts are now available for HDB++ and MySQL. The HDB++ tools, such as extraction libraries and GUIs, followed HDB++ evolution to help the user to take full advantage of the new features.  
poster icon Poster TUPHA166 [1.957 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA166  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUPHA174 Cumbia: A New Library for Multi-Threaded Application Design and Implementation 830
 
  • G. Strangolino
    Elettra-Sincrotrone Trieste S.C.p.A., Basovizza, Italy
 
  Cumbia is a new library that offers a carefree approach to multi-threaded application design and implementation. Written from scratch, it can be seen as the evolution of the QTango library, because it offers a more flexible and object oriented multi-threaded programming style. Less concern about locking techniques and synchronization, and well defined design patterns stand for more focus on the work to be performed inside Cumbia Activities and reliable and reusable software as a result. The user writes Activities and decides when their instances are started and to which thread they belong. A token is used to register an Activity, and activities with the same token are run in the same thread. Computed results can be forwarded to the main execution thread, where a GUI can be updated. In conjunction with the Cumbia-Tango module, this framework serves the developer willing to connect an application to the Tango control system. The integration is possible both on the client and the server side. An example of a TANGO device using Cumbia to do work in background has already been developed, as well as simple Qt graphical clients relying on the framework.  
poster icon Poster TUPHA174 [0.567 MB]  
DOI • reference for this paper ※ https://doi.org/10.18429/JACoW-ICALEPCS2017-TUPHA174  
Export • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)