Data not available
Forum rules
Please make sure you follow the Problem Reporting Guidelines before posting if you want a reply
Please make sure you follow the Problem Reporting Guidelines before posting if you want a reply
Data not available
Hi folks,
Just upgraded from 10.13.0 to 14.6.0. In 10.13.0 everything worked like a charm, but things seems to be broken in 14.6.0. The media server is visible on my renderers, but the server doesn't send any browse information. If I try the player in the web interface, a pop-up appears saying "your browse data was not received from the server". It's not a permission problem: nothing has changed and the data is on the local file system. SHARED.conf:
[
{
"file": "/muziekarchief/MUSIC",
"monitored": true,
"metadata": true,
"active": true,
"groups": [],
"type": "Folder"
},
{
"file": "/videos",
"monitored": true,
"metadata": true,
"active": true,
"groups": [],
"type": "Folder"
},
{
"file": "/fotoarchief",
"monitored": true,
"metadata": true,
"active": true,
"groups": [],
"type": "Folder"
}
After the error message, browsing is impossible. All folders are 755. Googling on the error gives no results. Any suggestions where to look?
Just upgraded from 10.13.0 to 14.6.0. In 10.13.0 everything worked like a charm, but things seems to be broken in 14.6.0. The media server is visible on my renderers, but the server doesn't send any browse information. If I try the player in the web interface, a pop-up appears saying "your browse data was not received from the server". It's not a permission problem: nothing has changed and the data is on the local file system. SHARED.conf:
[
{
"file": "/muziekarchief/MUSIC",
"monitored": true,
"metadata": true,
"active": true,
"groups": [],
"type": "Folder"
},
{
"file": "/videos",
"monitored": true,
"metadata": true,
"active": true,
"groups": [],
"type": "Folder"
},
{
"file": "/fotoarchief",
"monitored": true,
"metadata": true,
"active": true,
"groups": [],
"type": "Folder"
}
After the error message, browsing is impossible. All folders are 755. Googling on the error gives no results. Any suggestions where to look?
Re: Data not available
I think I found the problem. It has to do with the special characters (like é, ñ, ü etc) in the filenames. Is there a way (character set setting?) to cope with these characters?
Re: Data not available
Special characters in filenames should not cause problems but it has been known to happen in the past so there may be a bug somewhere.
Could you post your logs (see the section in red above) so I can see what is happening.
Could you post your logs (see the section in red above) so I can see what is happening.
Logs are important for us to help, Please follow This Link before asking for support. Just a forum cleaner, Will help if I can but no expert.
Re: Data not available
Here's the log. On 2 occasions the "Your browse data was not received from the server" occurred.
Re: Data not available
I have had a problem with special characters in the past.
In some instances, just one file with a special character has made the entire folder unreadable.
In the end, I just changed the file names so none had any special characters.
In some instances, just one file with a special character has made the entire folder unreadable.
In the end, I just changed the file names so none had any special characters.
Re: Data not available
I can see UMS thinks the filename is malformed so definitely something wrong here. It is happening in the media scanner and the webguiserver PlayerApiServlet.
I'll make an issue on Github.
Code: Select all
ERROR 2024-11-08 21:35:24.006 [Media Scanner] net.pms.store.MediaScanner Unhandled exception during media scan: Malformed input or input contains unmappable characters: /muziekarchief/MUSIC/Bach/Bach complete org (MP3)/Clavier-��bung III (Bach 2000 v08CD06)
TRACE 2024-11-08 21:35:24.007 [Media Scanner] net.pms.store.MediaScanner
java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /muziekarchief/MUSIC/Bach/Bach complete org (MP3)/Clavier-��bung III (Bach 2000 v08CD06)
at java.base/sun.nio.fs.UnixPath.encode(Unknown Source)
at java.base/sun.nio.fs.UnixPath.<init>(Unknown Source)
at java.base/sun.nio.fs.UnixFileSystem.getPath(Unknown Source)
at java.base/java.nio.file.Path.of(Unknown Source)
at java.base/java.nio.file.Paths.get(Unknown Source)
at net.pms.store.container.VirtualFolder.lambda$getFilesListForDirectories$0(VirtualFolder.java:154)
at java.base/java.io.File.listFiles(Unknown Source)
at net.pms.store.container.VirtualFolder.getFilesListForDirectories(VirtualFolder.java:153)
at net.pms.store.container.VirtualFolder.discoverChildren(VirtualFolder.java:215)
at net.pms.store.MediaScanner.scan(MediaScanner.java:141)
at net.pms.store.MediaScanner.scan(MediaScanner.java:147)
at net.pms.store.MediaScanner.scan(MediaScanner.java:147)
at net.pms.store.MediaScanner.startScan(MediaScanner.java:98)
at net.pms.store.MediaScanner.lambda$startMediaScan$0(MediaScanner.java:198)
at java.base/java.lang.Thread.run(Unknown Source)
ERROR 2024-11-08 21:35:47.648 [webgui-server-40] net.pms.network.webguiserver.servlets.PlayerApiServlet Exception in PlayerApiServlet: Malformed input or input contains unmappable characters: /muziekarchief/MUSIC/Bach/Bach complete org (MP3)/Clavier-��bung III (Bach 2000 v08CD06)
TRACE 2024-11-08 21:35:47.649 [webgui-server-40] net.pms.network.webguiserver.servlets.PlayerApiServlet {}
java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /muziekarchief/MUSIC/Bach/Bach complete org (MP3)/Clavier-��bung III (Bach 2000 v08CD06)
at java.base/sun.nio.fs.UnixPath.encode(Unknown Source)
at java.base/sun.nio.fs.UnixPath.<init>(Unknown Source)
at java.base/sun.nio.fs.UnixFileSystem.getPath(Unknown Source)
at java.base/java.nio.file.Path.of(Unknown Source)
at java.base/java.nio.file.Paths.get(Unknown Source)
at net.pms.store.container.VirtualFolder.lambda$getFilesListForDirectories$0(VirtualFolder.java:154)
at java.base/java.io.File.listFiles(Unknown Source)
at net.pms.store.container.VirtualFolder.getFilesListForDirectories(VirtualFolder.java:153)
at net.pms.store.container.VirtualFolder.discoverChildren(VirtualFolder.java:215)
at net.pms.store.StoreContainer.discover(StoreContainer.java:696)
at net.pms.store.MediaStore.getResources(MediaStore.java:664)
at net.pms.network.webguiserver.servlets.PlayerApiServlet.getBrowsePage(PlayerApiServlet.java:339)
at net.pms.network.webguiserver.servlets.PlayerApiServlet.doPost(PlayerApiServlet.java:153)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:547)
at net.pms.network.webguiserver.GuiHttpServlet.service(GuiHttpServlet.java:61)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
at org.eclipse.jetty.ee10.servlet.ServletHolder.handle(ServletHolder.java:736)
at org.eclipse.jetty.ee10.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1614)
at org.eclipse.jetty.ee10.servlet.ServletHandler$MappedServlet.handle(ServletHandler.java:1547)
at org.eclipse.jetty.ee10.servlet.ServletChannel.dispatch(ServletChannel.java:824)
at org.eclipse.jetty.ee10.servlet.ServletChannel.handle(ServletChannel.java:436)
at org.eclipse.jetty.ee10.servlet.ServletHandler.handle(ServletHandler.java:464)
at org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1060)
at org.eclipse.jetty.server.Server.handle(Server.java:181)
at org.eclipse.jetty.server.internal.HttpChannelState$HandlerInvoker.run(HttpChannelState.java:661)
at org.eclipse.jetty.server.internal.HttpConnection.onFillable(HttpConnection.java:406)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:322)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:99)
at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:478)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:441)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:293)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.run(AdaptiveExecutionStrategy.java:201)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:311)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:979)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1209)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1164)
at java.base/java.lang.Thread.run(Unknown Source)
ERROR 2024-11-08 21:36:19.042 [webgui-server-38] net.pms.network.webguiserver.servlets.PlayerApiServlet Exception in PlayerApiServlet: Malformed input or input contains unmappable characters: /muziekarchief/MUSIC/Christmas/Andre Rieu/Merry Christmas/09 - Minuit Chr��tien.mp3
TRACE 2024-11-08 21:36:19.045 [webgui-server-38] net.pms.network.webguiserver.servlets.PlayerApiServlet {}
java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /muziekarchief/MUSIC/Christmas/Andre Rieu/Merry Christmas/09 - Minuit Chr��tien.mp3
at java.base/sun.nio.fs.UnixPath.encode(Unknown Source)
at java.base/sun.nio.fs.UnixPath.<init>(Unknown Source)
at java.base/sun.nio.fs.UnixFileSystem.getPath(Unknown Source)
at java.base/java.nio.file.Path.of(Unknown Source)
at java.base/java.nio.file.Paths.get(Unknown Source)
at net.pms.store.container.VirtualFolder.lambda$getFilesListForDirectories$0(VirtualFolder.java:154)
at java.base/java.io.File.listFiles(Unknown Source)
at net.pms.store.container.VirtualFolder.getFilesListForDirectories(VirtualFolder.java:153)
at net.pms.store.container.VirtualFolder.discoverChildren(VirtualFolder.java:215)
at net.pms.store.StoreContainer.discover(StoreContainer.java:696)
at net.pms.store.MediaStore.getResources(MediaStore.java:664)
at net.pms.network.webguiserver.servlets.PlayerApiServlet.getBrowsePage(PlayerApiServlet.java:339)
at net.pms.network.webguiserver.servlets.PlayerApiServlet.doPost(PlayerApiServlet.java:153)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:547)
at net.pms.network.webguiserver.GuiHttpServlet.service(GuiHttpServlet.java:61)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
at org.eclipse.jetty.ee10.servlet.ServletHolder.handle(ServletHolder.java:736)
at org.eclipse.jetty.ee10.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1614)
at org.eclipse.jetty.ee10.servlet.ServletHandler$MappedServlet.handle(ServletHandler.java:1547)
at org.eclipse.jetty.ee10.servlet.ServletChannel.dispatch(ServletChannel.java:824)
at org.eclipse.jetty.ee10.servlet.ServletChannel.handle(ServletChannel.java:436)
at org.eclipse.jetty.ee10.servlet.ServletHandler.handle(ServletHandler.java:464)
at org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1060)
at org.eclipse.jetty.server.Server.handle(Server.java:181)
at org.eclipse.jetty.server.internal.HttpChannelState$HandlerInvoker.run(HttpChannelState.java:661)
at org.eclipse.jetty.server.internal.HttpConnection.onFillable(HttpConnection.java:406)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:322)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:99)
at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:478)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:441)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:293)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.run(AdaptiveExecutionStrategy.java:201)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:311)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:979)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1209)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1164)
at java.base/java.lang.Thread.run(Unknown Source)
I'll make an issue on Github.
Logs are important for us to help, Please follow This Link before asking for support. Just a forum cleaner, Will help if I can but no expert.
Re: Data not available
Thanks. In the meantime, I'll go back to 10.13, to get a working situation again. Though changing filenames may solve the issue, there are 372 albums on the media server. Checking all albums and their tracknames is just too much.
Re: Data not available
There has been some progress on this and we now think we know the cause of the special characters causing problems.
It has to do with the filenames being encoded in extended ASCII (ISO-8859-1) but being read as UTF-8 as otherwise normal ASCII is the same in UTF-8 but the extended characters are not so appear as invalid with the � symbol.
This seems to happen if the file was created on an older OS which keeps the filename encoding instead of updating to the locale of the current OS, and appears to be a quirk of Linux.
There are tools to rename these files into UTF-8 format like convmv and detox which will fix this on an OS level.
There is some updates to better handle when UMS encounters these characters so hopefully it will fix this, or at least not break things and give better logging on the problem.
@boss do you still have any of these files with special characters that won't work or have you renamed them all. This is not something the Devs or I can really test as we don't use Linux so could you do some testing? I guess you could use those tools to convert back to ISO-8859-1 and rename them using the accent characters. I'll ask if a test build can be made for you.
It has to do with the filenames being encoded in extended ASCII (ISO-8859-1) but being read as UTF-8 as otherwise normal ASCII is the same in UTF-8 but the extended characters are not so appear as invalid with the � symbol.
This seems to happen if the file was created on an older OS which keeps the filename encoding instead of updating to the locale of the current OS, and appears to be a quirk of Linux.
There are tools to rename these files into UTF-8 format like convmv and detox which will fix this on an OS level.
There is some updates to better handle when UMS encounters these characters so hopefully it will fix this, or at least not break things and give better logging on the problem.
@boss do you still have any of these files with special characters that won't work or have you renamed them all. This is not something the Devs or I can really test as we don't use Linux so could you do some testing? I guess you could use those tools to convert back to ISO-8859-1 and rename them using the accent characters. I'll ask if a test build can be made for you.
Logs are important for us to help, Please follow This Link before asking for support. Just a forum cleaner, Will help if I can but no expert.
Re: Data not available
@mik_s
I don't have any of the files with special characters which were causing an issue.
It was a couple of years back now and I don't remember which files they were and at that time I removed the special characters which were causing the issue.
From memory there were only 2, but as I said, the entire folder showed as empty when one of these files with special characters was in that folder.
Cheers
I don't have any of the files with special characters which were causing an issue.
It was a couple of years back now and I don't remember which files they were and at that time I removed the special characters which were causing the issue.
From memory there were only 2, but as I said, the entire folder showed as empty when one of these files with special characters was in that folder.
Cheers
Re: Data not available
We have a fix now, do you want me to send you the fixed version?