Row size error during SOGo migration

When attempting to migrate to NS8, I am getting this error when migrating SOGo:

Cannot add field c_description in table sogo.sogojeff0024f7c2cac_quick because after adding it, the row size is 8670 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page.
ERROR 1118 (42000) at line 1977: Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.

The migration then fails. I can the abort the migration and continue using the old server, however I need to get past this.

What is the version of sogo in ns7 ?

This is during the migration from 7 to 8.

I say that because I know the sogo version is greater on NS8…

I’m sorry, I misunderstood the question. Sogo on the NS 7 server is 5.9.

On ns8 it is 5.10

I updated to 5.10 on my ns7 instance, but got the same result in migration.

Yes because it is not a sogo issue but a database issue

https://www.google.com/search?q=Row+size+too+large+sogo&client=ms-android-samsung-ss&sca_esv=3d5aec0ebbda9031&sxsrf=ACQVn09Nc7_6JQjwZ7k7wj-v4mZSSvwbtA%3A1712607801741&ei=OVIUZpPmLO2rkdUPgNGgqAw&oq=Row+size+too+large+sogo&gs_lp=EhNtb2JpbGUtZ3dzLXdpei1zZXJwIhdSb3cgc2l6ZSB0b28gbGFyZ2Ugc29nbzIFECEYoAEyBRAhGKABMgUQIRigATIFECEYoAFIjhtQmQ1YuhhwAXgBkAEAmAGqAaABkwaqAQMwLjW4AQPIAQD4AQGYAgagAvoGwgIKEAAYRxjWBBiwA8ICDRAAGIAEGIoFGEMYsAPCAgUQABiABMICCBAAGIAEGMsBwgIGEAAYFhgewgIHECEYChigAZgDAIgGAZAGCZIHAzEuNaAHiho&sclient=mobile-gws-wiz-serp

OK, so it had been working fine on the NS7 VM. How do I get the NS8 VM to accept it since the database isn’t setup until the migration is started? Reading the through that link, it is a little passed my expertise, but I can follow it.

So, after starting the migration again but before hitting sync data, I edited:

/home/sogo10/.local/share/containers/storage/overlay/bccd7b9a2957bbdee3389783122b36ebad96f55fd0f0d13823d0c7e0c62e63da/diff/etc/mysql/mariadb.conf.d/50-server.cnf

yes, by the sogo10 you know I’ve tried this a few times…

I added these two lines to the [mysqld] section:

innodb_log_file_size = 512M

innodb_strict_mode = 0

I then rebooted, because I was not sure how to get just that container instance of mariadb to restart.

That seems to have allowed me to get past that error as I was able to sync the data but it now fails with simply this at the end of the ns8-migration log file.

rsync: failed to connect to 10.5.4.1 (10.5.4.1): Connection refused (111)
rsync error: error in socket IO (code 10) at clientserver.c(126) [sender=3.1.2]

could you catch something in NS8 log

journalctl -e _UID=$(id -u sogo10)

could you send me your database

mysqldump --single-transaction --quick --add-drop-table -QB "sogo" -r sogo.sql
# SOGo strore the protocol of connection of users in the database : mysql://sogo:password@localhost/
old_password=$(cat /var/lib/nethserver/secrets/sogo)
sed -i "s|mysql://sogo:$old_password@localhost/|mysql://sogo:Nethesis,1234@127.0.0.1:3306/|g" sogo.sql

from here

1 Like

PM’d a link and pw to the file.

1 Like

how many users have you on sogo, does a manual backup and restoration is possible/feasible

I have 6 users. Yes, a manual backup and restore is possible, just not exactly experienced enough with it to be confident in doing it right.

Is this a good starting point for the process? I’m going to start there.

https://docs.nethserver.org/en/latest/sogo.html#backup

Also, if this works, how do I do the ns8 migration to move the mail over?

Also, here is the output from the journalctl, sorry I missed that:

BlockquoteApr 09 15:17:25 mail2 systemd[1468]: Queued start job for default target Main User Target.
Apr 09 15:17:25 mail2 systemd[1468]: Created slice User Application Slice.
Apr 09 15:17:25 mail2 systemd[1468]: Started Mark boot as successful after the user session has run 2 minutes.
Apr 09 15:17:25 mail2 systemd[1468]: Started Daily Cleanup of User’s Temporary Directories.
Apr 09 15:17:25 mail2 systemd[1468]: Reached target Paths.
Apr 09 15:17:25 mail2 systemd[1468]: Reached target Timers.
Apr 09 15:17:25 mail2 systemd[1468]: Starting D-Bus User Message Bus Socket…
Apr 09 15:17:25 mail2 systemd[1468]: Starting Create User’s Volatile Files and Directories…
Apr 09 15:17:26 mail2 systemd[1468]: Listening on D-Bus User Message Bus Socket.
Apr 09 15:17:26 mail2 systemd[1468]: Finished Create User’s Volatile Files and Directories.
Apr 09 15:17:26 mail2 systemd[1468]: Reached target Sockets.
Apr 09 15:17:26 mail2 systemd[1468]: Reached target Basic System.
Apr 09 15:17:26 mail2 systemd[1468]: Started Rootless module/sogo11 agent.
Apr 09 15:17:26 mail2 systemd[1468]: Reached target Main User Target.
Apr 09 15:17:26 mail2 systemd[1468]: Startup finished in 1.499s.
Apr 09 15:20:09 mail2 systemd[1468]: Starting Mark boot as successful…
Apr 09 15:20:09 mail2 systemd[1468]: Finished Mark boot as successful.
Apr 09 15:23:09 mail2 systemd[1468]: Created slice User Background Tasks Slice.
Apr 09 15:23:09 mail2 systemd[1468]: Starting Cleanup of User’s Temporary Files and Directories…
Apr 09 15:23:09 mail2 systemd[1468]: Finished Cleanup of User’s Temporary Files and Directories.

I do not see that that sogo-restore-user is installed on the new server.

I can migrate your sql database but I need to ignore the warning of inno db and this is not good but in your cases it seems workable

in /home/sogo1/.config/actions/restore-module/40restoreDB add

-   ${MARIADB_IMAGE}
+   ${MARIADB_IMAGE} --innodb-strict-mode=0

from InnoDB System Variables - MariaDB Knowledge Base

what do you think @davidep I feel a bit savage to add it to everybody however in this case it blocks the migration

1 Like

the actions/restore-module/40restoreDB is also used to restore the table from the backup, it means for a restoration you will fails. In fact you were probably not aware about you database corrupted status because you probably never restored your database on NS7

I am not a gambler but in you case I am close to bet :stuck_out_tongue:

I was able to get through that, and we are migrated. Thank you for your help. Looks like I’ll be starting a new thread though, as my group folders in nextcloud migrated the data, but the app in Nextcloud doesn’t seem to be working.

Edit Just had to disable then download and enable Group Folders. Talk as well, I’m not sure which other apps may need that.

1 Like