Multi-series episode matching BUG

Hmm… I just did a test with these files/folder hierarchy:

/home/myuser/test_tv/
├── MGM Cartoons (1934)
│   └── Season 1934
│       └── MGM Cartoons (1934) - S1940E02.mkv
└── Tom and Jerry (1940)
    └── Season 1940
        └── Tom and Jerry (1940) - S1940E01.mkv

The Tom and Jerry episode is a hard link to the MGM Cartoons episode. Pointing my test library to “test_tv” resulted in the behavior we observed earlier: When a scan is performed it finds one or the other series, but not both. Refreshing metadata causes the detection to flip to the other series.

To test the CIFS/SMB3 mount, I created a share on my system; in /etc/samba/smb.conf:

[tempcifs]
        path = /home/myuser/test_tv
        guest account =
        writeable = yes
        valid users = myuser
        user = myuser

Restarted smbd and nmbd:
sudo systemctl restart smbd nmdb

And then, still on the same system, mounted that share via the loopback interface on a temp directory:
sudo mount -t smb3 -o username=myuser //127.0.0.1/tempcifs /mnt/cifstest/

(/mnt/cifstest/ is owned by myuser.)

This is /mnt/cifstest/ after mounting:

/mnt/cifstest/
├── MGM Cartoons (1934)
│   └── Season 1934
│       └── MGM Cartoons (1934) - S1940E02.mkv
└── Tom and Jerry (1940)
    └── Season 1940
        └── Tom and Jerry (1940) - S1940E01.mkv

I removed my existing test_tv directory from the library configuration and added /mnt/cifstest. (Actually, I performed a Plex Dance to ensure there were no remnants of the previous configuration.) A scan was performed and it then matched both series separately, with correct metadata.

Some notes:

  • I already had samba installed and configured on my server; the configuration I added above was in addition to the existing one.
  • I tend to use CIFS and SMB(3) interchangeably. However, in this test, I’m mounting via SMB3. Just ignore that I named everything with cifs.
  • This testing was done with a dummy file generated from dd:
    dd if=/dev/random of="MGM Cartoons (1934) - S1940E02.mkv" bs=1M count=10
    Then I created the hard link to it.
  • I did some testing with bindfs as well but saw some weird results. I need to do those tests again.
  • Other stuff I likely forgot.

All that to say it appears that looping back via a local network share might workaround this problem for you. If I were going to take this approach, I’d only do it for my problematic series. That is, put those series in a separate folder hierarchy and then only share that.