When making develop tests with Alpha_142 version I noticed that there is a problem with my "ALL" log when using Online Logs. This perhaps never happen to anyone else, but in case may happen.
My setup is Fedora43 linux and I am using local MariaDB server for logs. MariaDB version is "Ver 15.1 Distrib 10.11.16-MariaDB"
In Cqrlog setup I do NOT use "save log data to local machine", instead Database Connect window has 127.0.0.1 as Server and 3306 as Port.
My log has a bit over 20000 qsos.
This is what happens:
If I check Preferences/Online Log bottom any checkbox that prevents changes to online logs in case qso is edited, or qsl information changes Cqrlog does halt when using eQSL or LotW up/dn load, or Qso Edit. It halts also when using QSO list/Online log/Remove all upload triggers.
Common for all these operations is that they do remove MariaDB triggers from cqrlog_main table and after operation they create triggers back.
This happens only with my "ALL" log, not with test logs having just few qsos. Also if I create a new clean log and do not copy settings from any other log but just type all in and then do ADIF import my >20000 qsos then the log works properly, but a small while before same bug comes back.
If I change startup window Database Connect settings to point to my server (in local network) that is an old Fedora with Mariadb Ver 15.1 Distrib 10.5.15-MariaDB and has replica of my "ALL" log everything works fine without bugs.
So it looks like MariaDB version has something to do with this.
When I switch back to local machine database, not to ipv4 (127.0.0.1) address but to ipv6 localhost ::1 everything works again without problems !!
In this case when I close Cqrlog and start it again then it halts again with same operations as before.
Could it be my CqrlogAlpha anyway?
I have made further debugging starting CqrlogAlpha with --debug=-64 parameter. Then it prints all database communication that happens between Freepascal SQL unit and Sql server.
From that debug I can see that Cqrlog sends proper trigger delete/create command to MariaDB (halt happens on delete if there are existing triggers, if not it happens on create) but then everything stops.
I have traced that also by tcpdump and Cqrlog really sends TCP frame having that command to MariaDB, but MariaDB does not give any response.
If I leave Cqrlog in halt state and open a command console and make connect to MariaDB I can see that the trigger Cqrlog is trying to delete is still there in cqrlog_main table.
If I issue same trigger delete command from MariaDB console it also halts without giving prompt back !!
When I kill Cqrlog it also releases MariaDB console and the if I check triggers the trigger has gone away (delete trigger command has been run, via released command console. I think).
I have not tested to move my log to "save log data to local machine" I.E. having another MariaDB instance to run in ~/.config/cqrlog/database folder.
That is the test I still have to try.
This may not happen to anyone else, but in case it is good to know "I have heard similar case before..."
Everything works ok with my "ALL" log as long as I do not use things that use database trigger delete/create functions. I.E. check Preferences/Online Log bottom any checkbox that prevents changes to online logs or use QSO list/Online log/Remove all upload triggers.
Is the problem in MariaDB or in CqrlogAlpha I may never know...
I have not found any glue by Googling, but if there is any MariaDB guru who can suggest further testings I would like to hear those.
Anyway It does not bother me a lot as I do normally not use online logs, but needed to do so when testing new QRZlog connection.




Recent comments