Code

8 months 4 weeks ago #334704 by bmeeker
Code was created by bmeeker
I have a fantastic site on a temporary server that uses MariaDB and it works great. I can use AkeebaBackup to copy it to another site on the same server without any issue.
But, I cannot copy it to a new server that uses a MySQL8 database.

I get the error:  ErrNo #1118
Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
What can I do to make this work on my new server using MySQL80

I have tried converting mediumtext to blob with most of the rest being text fields. I tried changing the collation and other remedies I have found in other forum topics, but nothing seems to work.
The issue is only with the #__comprofiler table.
If I load the new site without the #__comprofiler table, it loads fine, but of course the site doesn't function.

How can I get this to work?

Please Log in to join the conversation.

8 months 4 weeks ago #334705 by krileon
Replied by krileon on topic Code
You're moving database engines entirely so that's bound to happen. How many fields do you have? Please also see the below topic and review your MySQL configuration as your default values maybe incorrect causing low row size limits.

www.joomlapolis.com/forum/153-professional-member-support/242484-installation-cb-connect-failed?start=12#318734

Most fields CB creates will be of text type to avoid this.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.

Please Log in to join the conversation.

8 months 4 weeks ago #334706 by bmeeker
Replied by bmeeker on topic Code
Thanks Kyle:

661 fields.

The article you showed seems to only refer to the MariaDB settings. I am having trouble loading it on my new server with MySQL8.
Are you saying the settings need to be corrected on the MariaDB settings before backing up and trying to move to the new server with MySQL8 database?

Please Log in to join the conversation.

8 months 4 weeks ago #334707 by krileon
Replied by krileon on topic Code

661 fields.

That is a very large number of fields. I don't know if you'll be able to have anymore without customizing the MySQL settings to deliberately increase the row size limit. Even with text fields their byte pointers will add up. Suggest reading through MySQL documentation regarding this.

dev.mysql.com/doc/refman/8.0/en/column-count-limit.html

You might only need to adjust the following.

dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_page_size

To be honest we don't expect most sites to make more than 200-400 fields (the standard CB site seams to be around 50-100 at most) and was designed this way nearly 15 years ago. We'll be completely redesigning field storage in CB 3.x though to eliminate any field limitations. For now though any sites needing an extremely large amount of fields will need to adjust their MySQL configuration.

The article you showed seems to only refer to the MariaDB settings.

Those same settings should exist in MySQL.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.

Please Log in to join the conversation.

8 months 4 weeks ago #334709 by bmeeker
Replied by bmeeker on topic Code
Actually, looking at the database, there are 457 fields. The rest are queries or custom html.

Should the Collation be utf8mb4_unicode_ci or utf8mb4_general_ci ?

Please Log in to join the conversation.

8 months 4 weeks ago #334715 by krileon
Replied by krileon on topic Code

Actually, looking at the database, there are 457 fields. The rest are queries or custom html.

That's still quite a lot, but is more reasonable and is at the upper limits depending on database configuration.

Should the Collation be utf8mb4_unicode_ci or utf8mb4_general_ci ?

It should be utf8mb4_unicode_ci.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.

Please Log in to join the conversation.

Moderators: beatnantkrileon
Time to create page: 0.199 seconds