Back Midas Rome Roody Rootana
  Midas DAQ System, Page 1 of 50  Not logged in ELOG logo
Entry  01 Oct 2025, Frederik Wauters, Forum, struct size mismatch of alarms 
So I started our DAQ with an updated midas, after ca. 6 months+. 

No issues except all FEs complaining about the Alarm ODB structure.
    Reply  01 Oct 2025, Nick Hastings, Forum, struct size mismatch of alarms 
> So I started our DAQ with an updated midas, after ca. 6 months+.

Would be worthwhile mentioning the git commit hash or tag you are using.
       Reply  01 Oct 2025, Nick Hastings, Forum, struct size mismatch of alarms 
Just to be clear, it seems that your "EPICS Frontend" was either not recompiled against the new midas yet or the old binary is being run, but "SC Frontend"
is using the new midas.
          Reply  02 Oct 2025, Stefan Ritt, Forum, struct size mismatch of alarms 
Sorry to intervene there, but the FEs are usually compiled against libmidas.a . Therefore you have to compile midas, usually do a "make install" to update
the libmidas.a/so, then recompile the FEs. You probably forgot the "make install".
             Reply  02 Oct 2025, Frederik Wauters, Forum, struct size mismatch of alarms 
> Sorry to intervene there, but the FEs are usually compiled against libmidas.a . Therefore you have to compile midas, usually do a "make install" to update
the libmidas.a/so, then recompile the FEs. You probably forgot the "make install".
Entry  17 Sep 2025, Mark Grimes, Suggestion, Get manalyzer to configure midas::odb when running offline 
Hi,
Lots of users like the midas::odb interface for reading from the ODB in manalyzers. It currently doesn't 
work offline however without a few manual lines to tell midas::odb to read from the ODB copy in the run 
    Reply  17 Sep 2025, Konstantin Olchanski, Suggestion, Get manalyzer to configure midas::odb when running offline 
> Lots of users like the midas::odb interface for reading from the ODB in manalyzers.
> +#include "odbxx.h"
       Reply  18 Sep 2025, Mark Grimes, Suggestion, Get manalyzer to configure midas::odb when running offline 
> ....Before commit of this patch, can you confirm the RunInfo destructor
> deletes this ODB stuff from odbxx? manalyzer takes object life times very seriously.
          Reply  18 Sep 2025, Stefan Ritt, Suggestion, Get manalyzer to configure midas::odb when running offline 
> > Of course with this patch extending manalyzer to process two or more runs at the same time becomes impossible.

> Yes, I hadn't realised that was an option. For that to work I guess the aforementioned static members could be made thread local storage, and 
             Reply  22 Sep 2025, Stefan Ritt, Suggestion, Get manalyzer to configure midas::odb when running offline 
I will work today on the odbxx API to make sure there are no memory leaks when you switch form one file to another. I talked to KO so he agreed that yo
then commit your proposed change of manalyzer 
                Reply  22 Sep 2025, Konstantin Olchanski, Suggestion, Get manalyzer to configure midas::odb when running offline 
> I will work today on the odbxx API to make sure there are no memory leaks when you switch form one file to another. I talked to KO so he agreed that yo
then commit your proposed change of manalyzer 
                   Reply  22 Sep 2025, Stefan Ritt, Suggestion, Get manalyzer to configure midas::odb when running offline 
> > I will work today on the odbxx API to make sure there are no memory leaks when you switch form one file to another. I talked to KO so he agreed that
yo then commit your proposed change of manalyzer 
                Reply  26 Sep 2025, Mark Grimes, Suggestion, Get manalyzer to configure midas::odb when running offline 
> ...I talked to KO so he agreed that yo then commit your proposed change of manalyzer 

Merged and pushed.
          Reply  22 Sep 2025, Konstantin Olchanski, Suggestion, Get manalyzer to configure midas::odb when running offline 
> > ....Before commit of this patch, can you confirm the RunInfo destructor
> > deletes this ODB stuff from odbxx? manalyzer takes object life times very seriously.
             Reply  22 Sep 2025, Stefan Ritt, Suggestion, Get manalyzer to configure midas::odb when running offline 
> > > Of course with this patch extending manalyzer to process two or more runs at the same time becomes impossible.
> > Yes, I hadn't realised that was an option.
Entry  22 Sep 2025, Konstantin Olchanski, Info, obsolete mana.c removal 
Following discussions at the MIDAS workshop and the proposed removal of support for ROOT, the very obsolete mana.c 
analyzer framework has reached the end of the line.
    Reply  23 Sep 2025, Andreas Suter, Info, obsolete mana.c removal 
Hi,
at the LEM Experiment at PSI, we still use mana.c and would like to keep it until end of 2026, where we will enter a long shutdown.
There we will switch to the manalyzer. Before that, there is simply no time for the change over. One thing I already noticed is the "lack" of documentation,
       Reply  23 Sep 2025, Konstantin Olchanski, Info, obsolete mana.c removal 
> Hi, at the LEM Experiment at PSI, we still use mana.c and would like to keep it until end of 2026, where we will enter a long shutdown.

Excellent, good to hear from you! Once we remove ROOT support rmana.o will be gone, only mana.o (no ROOT) will remain. Will this break your builds?
          Reply  24 Sep 2025, Andreas Suter, Info, obsolete mana.c removal 
Sorry, 

I have had now the time to dig deeper in our code and realized that we actually use rmana, i.e. WITH ROOT. If there is an easy way to incorporate the necessary
Entry  24 Sep 2025, Thomas Lindner, Suggestion, Improve process for adding new variables that can be shown in history plots 
Documenting a discussion I had with Konstantin a while ago.

One aspect of the MIDAS history plotting I find frustrating is the sequence for adding a new history 
Entry  22 Sep 2025, Konstantin Olchanski, Info, switch midas to c++17 
Following discussions at the MIDAS workshop, we propose to move MIDAS from c++11 to c++17. There is 
many new features and we want to start using some of them.
    Reply  23 Sep 2025, Pavel Murat, Info, switch midas to c++17 
perhaps c++20? - std::format is an immediately useful feature. --regards, Pasha

> Following discussions at the MIDAS workshop, we propose to move MIDAS from c++11 to c++17. There is 
       Reply  23 Sep 2025, Konstantin Olchanski, Info, switch midas to c++17 
> perhaps c++20? - std::format is an immediately useful feature. --regards, Pasha

confirmed. std::format is an improvement over K&R C printf().
          Reply  23 Sep 2025, Pavel Murat, Info, switch midas to c++17 
> > perhaps c++20? - std::format is an immediately useful feature. --regards, Pasha

> confirmed. std::format is an improvement over K&R C printf().
Entry  23 Sep 2025, Konstantin Olchanski, Info, long history variable names 
To record discussion with Stefan about long history variable names.

We have several requests to remove the 32-byte limit on history variable names.
Entry  23 Sep 2025, Konstantin Olchanski, Info, 64-bit time_t 
To record discussion with Stefan regarding 64-bit time_t

To remember:
Entry  22 Sep 2025, Konstantin Olchanski, Info, removal of ROOT support in mlogger 
Historically, building MIDAS with ROOT caused us many problems - build failures because of c++ version 
mismatch, CFLAGS mismatch; run-time failures because of ROOT library mismatches; etc, etc.
Entry  07 Feb 2025, Konstantin Olchanski, Info, switch midas to next c++ 
to continue where we left off in 2019,
https://daq00.triumf.ca/elog-midas/Midas/1520
    Reply  20 Mar 2025, Konstantin Olchanski, Info, switch midas to next c++ 
> time to choose the next c++!

Ununtu-24.04, MIDAS builds with -std=c++23 without errors or any additional warnings. (but does it work? "make 
    Reply  22 Sep 2025, Konstantin Olchanski, Info, switch midas to next c++ 
As part of discussions with Stefan during the MIDAS workshop,
an update to supported versions of c++ on different platforms.
Entry  16 Apr 2025, Thomas Lindner, Info, MIDAS workshop (online) Sept 22-23, 2025 
Dear MIDAS enthusiasts,

We are planning a fifth MIDAS workshop, following on from previous successful 
    Reply  03 Jun 2025, Thomas Lindner, Info, MIDAS workshop (online) Sept 22-23, 2025 
Dear all,

We have setup an indico page for the MIDAS workshop on Sept 22-23.  The page is here
       Reply  08 Sep 2025, Thomas Lindner, Info, MIDAS workshop (online) Sept 22-23, 2025 
Dear all,

A reminder we will have our MIDAS workshop starting two weeks from today (Sept 22-23).  The 
          Reply  18 Sep 2025, Thomas Lindner, Info, MIDAS workshop (online) Sept 22-23, 2025 
Dear all,

A final reminder that the MIDAS workshop will be occurring next Monday and Tuesday (at least in Europe 
             Reply  22 Sep 2025, Thomas Lindner, Info, MIDAS workshop (online) Sept 22-23, 2025 
Dear all,

The original zoom link on the indico page was not correct.  We have created a new zoom link and updated the 
Entry  17 Sep 2025, Mark Grimes, Bug Report, Midas no longer compiles on macOS 
Hi,
The current develop branch no longer compiles on macOS. I get lots of errors of the form
    Reply  17 Sep 2025, Konstantin Olchanski, Bug Report, Midas no longer compiles on macOS 
> The current develop branch no longer compiles on macOS. I get lots of errors of the form
> /Users/me/midas/src/history_schema.cxx:740:4: error: unknown type name 'off64_t' ...
Entry  14 Aug 2025, Tam Kai Chung, Forum, How can I retrieve online data 
Dear experts,
I would like to know how to retrieve the online data during the experiment so 
that I can create my own custom plot. I execute my own frontend.exe to start the 
    Reply  14 Aug 2025, Konstantin Olchanski, Forum, How can I retrieve online data 
> I would like to know how to retrieve the online data during the experiment so 
> that I can create my own custom plot. I execute my own frontend.exe to start the 
> experiment. I can get a midas file after the experiment, but I am not sure about 
Entry  24 Jul 2025, Konstantin Olchanski, Bug Fix, support for large history files 
FILE history code (mhf_*.dat files) did not support reading history files bigger than about 2GB, this is now 
fixed on branch "feature/history_off64_t" (in final testing, to be merged ASAP).
Entry  23 Jul 2025, Konstantin Olchanski, Suggestion, K.O.'s guide to new C/C++ data types 
Over the last 10 years, the traditional C/C++ data types have been
displaced by a hodgepodge of new data types that promise portability
and generate useful (and not so useful) warnings, for example:
    Reply  24 Jul 2025, Konstantin Olchanski, Suggestion, K.O.'s guide to new C/C++ data types 
> for (int i=0; i<array_of_10_elements.size(); i++)

becomes
Entry  19 Feb 2025, Lukas Gerritzen, Bug Report, Default write cache size for new equipments breaks compatibility with older equipments 
We have a frontend for slow control with a lot of legacy code. I wanted to add a new equipment using the 
mdev_mscb class. It seems like the default write cache size is 1000000B now, which produces error 
messages like this:
    Reply  24 Feb 2025, Stefan Ritt, Bug Report, Default write cache size for new equipments breaks compatibility with older equipments 
The commit that introduced the write cache size check is https://bitbucket.org/tmidas/midas/commits/3619ecc6ba1d29d74c16aa6571e40920018184c0

Unfortunately K.O. added the write cache size to the equipment list, but there is currently no way to change this programmatically from the user frontend
       Reply  20 Mar 2025, Konstantin Olchanski, Bug Report, Default write cache size for new equipments breaks compatibility with older equipments 
I think I added the cache size correctly:

  {"Trigger",               /* equipment name */
          Reply  20 Mar 2025, Konstantin Olchanski, Bug Report, Default write cache size for new equipments breaks compatibility with older equipments 
the main purpose of the event buffer write cache is to prevent high contention for the 
event buffer shared memory semaphore in the pathological case of very high rate of very 
small events.
             Reply  20 Mar 2025, Konstantin Olchanski, Bug Report, Default write cache size for new equipments breaks compatibility with older equipments 
> the main purpose of the event buffer write cache

how to control the write cache size:
                Reply  20 Mar 2025, Konstantin Olchanski, Bug Report, Default write cache size for new equipments breaks compatibility with older equipments 
> > the main purpose of the event buffer write cache
> how to control the write cache size:
                Reply  21 Mar 2025, Stefan Ritt, Bug Report, Default write cache size for new equipments breaks compatibility with older equipments 
 > All this is kind of reasonable, as only two settings of write cache size are useful: 0 to 
> disable it, and 10 Mbytes to limit semaphore locking rate to reasonable value for all event 
> rate and size values practical on current computers.
                   Reply  25 Mar 2025, Konstantin Olchanski, Bug Report, Default write cache size for new equipments breaks compatibility with older equipments 
>  > All this is kind of reasonable, as only two settings of write cache size are useful: 0 to 
> > disable it, and 10 Mbytes to limit semaphore locking rate to reasonable value for all event 
> > rate and size values practical on current computers.
                      Reply  21 Jul 2025, Stefan Ritt, Bug Report, Default write cache size for new equipments breaks compatibility with older equipments 
> Perhaps have:

> set_write_cache_size("SYSTEM", 0);
Entry  13 Jul 2025, Zaher Salman, Info, PySequencer 
As many of you already know Ben introduced the new PySequencer that allows running python scripts from MIDAS. In the last couple of month we have been working
on integrating it into the MIDAS pages. We think that it is now ready for general testing.
Entry  04 Jul 2025, Mark Grimes, Bug Report, Memory leaks in mhttpd 
Something changed in our system and we started seeing memory leaks in mhttpd again.  I guess someone 
updated some front end or custom page code that interacted with mhttpd differently.
I found a few memory leaks in some (presumably) rarely seen corner cases and we now see steady 
Entry  04 Jun 2025, Mark Grimes, Bug Report, Memory leak in mhttpd binary RPC code 
Hi,
During an evening of running we noticed that memory usage of mhttpd grew to close to 100Gb.  We think we've traced this to the following issue when making
RPC calls.
    Reply  04 Jun 2025, Konstantin Olchanski, Bug Report, Memory leak in mhttpd binary RPC code 
Noted. I will look at this asap. K.O.

[quote="Mark Grimes"]Hi,
       Reply  07 Jun 2025, Mark Grimes, Bug Report, Memory leak in mhttpd binary RPC code msysmon-mu3ebe-20250601-042124-20250606-122124.png
Hi,

We applied an intermediate fix for this locally and it seems to have fixed our issue.  The attached plot shows the percentage memory use
on our machine with 128 Gb memory, as a rough proxy for mhttpd memory use.  After applying our fix mhttpd seems to be happy using ~7% of the memory
          Reply  10 Jun 2025, Konstantin Olchanski, Bug Report, Memory leak in mhttpd binary RPC code 
I confirm that MJSON_ARRAYBUFFER does not work correctly for zero-size buffers, 
buffer is leaked in the destructor and copied as NULL in MJsonNode::Copy().
             Reply  15 Jun 2025, Mark Grimes, Bug Report, Memory leak in mhttpd binary RPC code 
Many thanks for the fix.  We've applied and see better memory performance.  We still have to kill and restart 
mhttpd after a few days however.  I think the official fix is missing this part:
                Reply  23 Jun 2025, Stefan Ritt, Bug Report, Memory leak in mhttpd binary RPC code 
Since this memory leak is quite obvious, I pushed the fix to develop.

Stefan
Entry  10 Jun 2025, Nik Berger, Bug Report, History variables with leading spaces 
By accident we had history variables with leading spaces. The history schema check then decides that this is a new variable (the leading space is not read
from the history file) and starts a new file. We found this because the run start became slow due to the many, many history files created. It would be
nice to just get an error if one has a malformed variable name like this.
    Reply  19 Jun 2025, Stefan Ritt, Bug Report, History variables with leading spaces 
I added now code to the logger so it properly complains if there would be a leading space in a variable name.

Stefan
Entry  19 Jun 2025, Frederik Wauters, Bug Report, add history variables 
I have encounter this a few times
* Make a new history panel
* Use the web GUI to add history variables
ELOG V3.1.4-2e1708b5