[SOLVED] Odd library behavior with MySQL and a new subnet mask

  • Not sure if this is a kodi or librelec issue.

    Recently I had to change the subnet mask on my network. I have two devices acting as media centers, a chromebox that was running openelec and that I switched over to Librelec as well as a Windows 10 PC.

    I changed the advanced setting XMLs on both devices to point to the updated internal IP along with updating the NFS bind mount on my server. I launched Kodi on the windows 10 PC and had an issue where it would hang on the splash screen. Disabling the advancedsettings.xml allowed me to get in and I could connect to the network shares. Some googling around I found that I needed to replace all the instances of my old subnet mask with the new subnet mask in the SQL table. Thank god for a great walk-through on how to do just that and bam my SQL library is up and running again.
    HOW-TO:Update Paths In MySQL - Official Kodi Wiki

    Move on to the chromebox running librelec. This was a fresh install utilizing a backup file from my openelec configuration. Everything comes up and looks good, but when I run the clean library function it takes 45+ minutes whereas it only took 3-5 on the windows box. At the end of the library cleaning it states that none of the media can be found. I say remove from library with the intention of rescraping. That was a mistake, it kills the SQL table I had just modified. I can access the files on the shares, but if I try to use an advancedsettings.xml for SQL it never creates a new library.

    Luckily I had created a backup of the DB and was able to drop the mangled table and import the backup SQL table. Everything is back...kind of. Some more poking around in the settings on the librelec device and I notice a discrepancy in the IP address. If I look at the network settings in the librelec menu it says it is obtaining an IP via DHCP and the IP listed has the new subnet mask, but if I go in to system properties it is reporting an IP with the old subnet mask info. I believe this is what is causing the library cleanup to state none of the files can be found.

    The IP address is being manually assigned at the router. Perhaps I had set a static IP on the device when it was running openelec and that is being brought in when I load the old openelec back up? If so how do I go about correcting the conflicting IPs? Is there a setting in kodi or perhaps at the command line?

    I know most will suggest I should avoid using the backup, but I was unable to get the SQL library working without it. On a fresh install not using the backup and using advancedsettings.xml to point to the SQL DB it wouldn't read anything. 0/0 items in the library. I could re-scan at the device level and it would create a new library, but it would not see the SQL library on my server.

    Sorry for the long post, hopefully it contains enough info.

    Edited once, last by silentbob343 (November 30, 2016 at 4:10 PM).

  • Got it working. I was able to SSH in and modify the autostart.sh with the updated IP. Now it launches in to kodi much faster and my library cleanup seems to function as it should.

    While looking around for that I stumbled upon the kodi sources xml that still had my old subnet. Changed those over as well.

    If I have learned anything it is avoid changing you subnet if you can avoid it...such a PITA. Damn new ISP forcing their gateway on me.

    I updated the original post to include the SQL backup link, hope it helps someone else.