MySQL column c08 length issue with MyVideos116?

Your log shows that you had a “data too long for column” error:

2020-08-25 18:26:45.894 T:4070735872 ERROR: SQL: [mysql116] Undefined MySQL error: Code (1406)

Since you’ve already applied the “mediumtext” workaround to c08, that leaves c20 as a possible culprit, since it’s also a very long string (around 46k characters). While 46k is smaller than the maximum size for a text column, which is 64k, I think it’ll depend upon which character set is being used. (For example a UTF-8 character is often two bytes long – and can be up to four bytes in more esoteric cases.)

Bottom line: try the workaround on c20, as well.

This was an easy thing to test, so I made the change to c20, but it didn’t help the issue. I certainly appreciate the fact you noticed this in the logs as a potential issue.

It might be a case of whack-a-mole. New debug logs will be needed, once again demonstrating the problem.

I appreciate the offer of trying this. Avengers Endgame is one of the movies exhibiting this issue. Here are my settings:

IMG_20200826_150409 IMG_20200826_150428 IMG_20200826_150442 IMG_20200826_150449 IMG_20200826_150457 IMG_20200826_150503 IMG_20200826_150509 IMG_20200826_150514 IMG_20200826_150521 IMG_20200826_150531 IMG_20200826_150541

I’m running Maria 10.4 on a Win 10 PC and testing on a Vero 4K. I set my Avenengers Endgame folder scraping settings to exactly how you posted. I refreshed from the internet and got the same error message in my logs and a failed scrape. I then edited c08 and c20 to mediumtext and tried it again and was able to scrape successfully. I think this probably lends further support to my earlier statements about the db version.

On a related note I question the need to basically check every box in the scraper settings. This makes for a very large increase in the amount of data being stored in the db.

In case you’re curious on the bloat that is getting dumped into the db with those scraper settings…
https://paste.osmc.tv/iwamowecuy.xml

2 Likes

I simply can’t thank you enough for doing that! For me, that’s pretty concrete evidence I need to change the DB. See? I’m pretty reasonable! :grin:

Since I’m changing, anyhow, is there any consensus on what I should move to? Update MySQL? Change to MariaDB?

MariaDB, from what I understand the Kodi team are considering ending support for MySQL at some point.

Thanks for the suggestion. I’ll see if I can find a guide to follow.

This is now about getting the MariaDB working, so if you want me to post a new thread, let me know. Otherwise…

I set up a new, empty DB using MariaDB on my headless Ubuntu server. I verified remote access is working via DBeaver and can browse the default databases there. I changed one of my Kodi instances (the NUC running Window 10) to point to the Ubuntu server in advancedsettings.xml. I then refreshed one movie folder in my library by changing the content type back and forth, so it would ask about updating the contents. That finished, but I don’t see the myvideos116 database on the Ubuntu server, so I don’t believe it’s actually using the central DB and is instead using local info.

Any idea where I should could start my troubleshooting? The Kodi log doesn’t seem to be giving me any hints, but I may not know what I should be looking for.

Share your logs (debug enabled) then we can help.
Did you configure the Kodi user with the full rights on the DB server?

Since you guys are helping me out and to be fair, I instead set up the Vero to access the new DB. After pointing the Vero to the new DB, I rebooted the Vero, and I needed to set the content type on the sources again. As soon as it started scanning, the DB was created and getting populated. I’m not sure why the other Kodi device didn’t do so, but I’m not too concerned about that at the moment.

I’m going to let the DB get fully populated and then see what the status of the problematic movies are. I haven’t yet changed any of the columns to mediumtext yet, as I want to take this one step at a time.

Thanks for all the help so far. I’ll return with more updates as this progresses.

EDIT: I realized I didn’t answer your question. Yes, did. :slightly_smiling_face:

The DB is working just fine. I updated the aforementioned columns and everything imported without any issues. Thanks for you help and patience, everyone!

3 Likes

And old versions of the DBs don’t handle mixed charsets very well. (sizing by “bytes” instead of “characters” for example, which is often the cause of oversized DB saves… (client app sends 40 characters, which it knows is less than 64 chars… but the DB then see it as 80 bytes and vomits… nowdays DB’s pretty much always assume UTF-8 instead of ASCII like in the old days) Upgrading the DB is probably the easiest solution. Usually, you can just upgrade in place and it will convert your schemes for you. (including mysql->mariadb if I recall correctly)