I am having trouble uploading to online logs since my update to 2.5.2. In this update, I had to reimport my old QSOs via adif and so I may have lost some of the old configuration.
I am getting the following errors on debug (looks like "missing band" on ClubLog and "Unable to find QSO on HRDLog:
data.Text:
email=...gmail.com
password=******
callsign=m0jmx
api=21507885dece41ca049fec7fe02a813f2105frmNewQSO
SyncUpdate:
SyncMsg :HamQTH: All QSO already uploaded
Section:frmLogUploadStatus
Saving window size a position (frmLogUploadStatus) (height|width|top|left):295|557|20|20
SyncUpdate:
SyncMsg :ClubLog: Deleting original YU1XA
SyncUpdate:
SyncMsaff2
dxcall=YU1XA
datetime=2017-11-20 22:18:00
bandid=40
Response :Missing band
ResultCode:403
select * from upload_status where logname='HRDLog'
select * from log_changes where id > 1 order by id
select * from log_changes where id = 2
allsign=m0jmx
Code=a194358620
App=****
ADIFKey=20171120221800YU1XA
Cmd=DELETE
Response :<?xml version="1.0" ?>
Unable to find QSO
ResultCode:200
g :ClubLog: Could not delete original QSO data!
SyncUpdate:
SyncMsg :HRDLog: Deleting original YU1XA
SyncUpdate:
SyncMsg :HRDLog: Could not delete original QSO data!
Section:frmLogUploadStatus
Hi!
I am not using any external logs, so I do not know exactly what to do.
But if I had import all (old) qsos as adif to new log I would use Qso list/Online log and select from there online log(s) I use and behind that execute "Mark all QSO as uploaded" if it is sure they are all uploaded with the old log system.
When you upgraded from old cqrlog to 2.5.2 your old logs should still work. Uninstall cqrlog and installing a new version should not touch your logs at ~/.config/cqrlog folder.
If the version step to 2.5.2 has been over several versions then new cqrlog may touch log databases if there has been changes in database table structure. How ever this should also keep logs still usable.
--
Saku
OH1KH
Thanks Saki,
Yes that sounds a good idea. The old database was not loading with the new version of cqrlog and I didn't want to mess around with it but I could try again and let you know what the error messages are if you think it might be fixable? Otherwise I will just manually upload any new QSOs and mark as uploaded in CQRlog.
Thanks so much!
James M0JMX
Hi James!
If you have playground with your old cqrlog and time you could try following, but there is no guarantee this will work. So make sure you have backups before trying.
Start old cqrlog up to "Database connection" window but do not open any log.
open command console and give (Change "saku" to your username):
mysqldump --single-transaction --all-databases -S /home/saku/.config/cqrlog/database/sock > /tmp/aa.sql
You should then have full mysql dump of your databases in file /tmp/aa.sql
From that file you need to delete all DEFINER=`` strings. You can do it with text editor's search&replace or use console command "sed":
sed -i 's/DEFINER=``//g' /tmp/aa.sql
After that give command
ps ax | grep mysqld
You should see something like:
9186 ? Sl 0:00 /usr/sbin/mysqld --defaults-file=/home/saku/.config/cqrlog/database/mysql.cnf --datadir=/home/saku/.config/cqrlog/database/ --socket=/home/saku/.config/cqrlog/database/sock --port=64000
copy that string starting from "/usr/sbin/mysqld" up to end of string.
Close cqrlog.
Copy /tmp/aa.sql to usb stick, or some other safe place.
Now with system that has new cqrlog installed:
copy file aa.sql from usb stick to /tmp
open command console and give that string (note there is your username in path, here it is mine):
/usr/sbin/mysqld --defaults-file=/home/saku/.config/cqrlog/database/mysql.cnf --datadir=/home/saku/.config/cqrlog/database/ --socket=/home/saku/.config/cqrlog/database/sock --port=64000
command prompt will not return. Leave console open.
Open another command console and give (Change "saku" to your username):
mysql -S /home/saku/.config/cqrlog/database/sock < /tmp/aa.sql
If no errors it should be ok. Then give:
ps ax | grep mysqld
Note the number at start of line:
1186 ? Sl 0:00 /usr/sbin/mysqld
And give command using that number:
kill -9 1186
Now prompt should return at command console you executed command:
/usr/sbin/mysqld --defaults-file=/home/saku/.config/cqrlog/database/mysql.cnf --datadir=/home/saku/.config/cqrlog/database/ --socket=/home/saku/.config/cqrlog/database/sock --port=64000
Then it is time to start new cqrlog and see that it has all logs and qsos that the old cqrlog had.
There is no guarantee this works. While writing this I did it few times with my PC but it had same cqrlog version all the time. So you can try it with your own risk.
--
Saku
OH1KH