After updating all services to version 2.23.16, the IFC import feature stopped working. Below is an image of the error.
It’s worth mentioning that I hadn’t updated the Docker Compose version in a while, so this issue might not necessarily be tied to version 2.23.16 . In fact, I rolled back to version 2.23.15 , and the same error persisted.
Looking into the issue, it seems the logic has changed. When I try to upload the same file but add .legacyimporter.ifc to the end of the file name, it works fine.
My question is: did I misunderstand something? Is this import service no longer available for self-hosted setups?
Attached are the IFC file used in the example and the logs from the file-import-service for reference.
{
"l": "Error",
"component": "fileimport-service",
"taskId": "647bb37441",
"fileId": "647bb37441",
"fileType": "ifc",
"fileName": "small-modified.ifc",
"fileSize": 695313,
"userId": "b032e0fa83",
"projectId": "b822c885ef",
"modelName": "arch",
"modelId": "309bcf113d",
"err": {
"type": "Error",
"message": "Operation is not supported on this platform.",
"stack": "Error: Operation is not supported on this platform.
at doTask (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:194:19)
at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
at async doStuff (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:347:13)
at async main (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:364:5)"
},
"t": "2025-04-10T19:55:28.425Z",
"x": "Error: Operation is not supported on this platform.
at doTask (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:194:19)
at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
at async doStuff (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:347:13)
at async main (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:364:5)",
"mt": "Error processing task"
}```
It would be good to know if you’re on any sort of arm system (e.g. snapdragon or apple silicon)
The .NET IFC parser is built to run on the x64 (aka amd64) Ubuntu 24. Anything else may have issues.
I also suggest trying a different IFC file (e.g. sample files)
I was also unsuccessful uploading your IFC file to app.speckle.systems, and received an error.
Digging into it a bit more, I suspect that there are some invalid elements inside this IFC file.
This IfcPropertySet (#244) is causing the failure because it references element #243,
however there is no element #243 anywhere in this file.
The system where the service is running is a Linux Ubuntu x64. Below is the output of the uname -a command:
Linux optype 5.15.0-134-generic #145-Ubuntu SMP Wed Feb 12 20:08:39 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
Regarding the IFC import, what I find strange is that it works fine with the older version (which makes me think this could be related to the new version of the importer, correct?).
I’m attaching another IFC file , which comes from the repository you mentioned in your response. This file successfully uploads to your site app.speckle.systems, but it doesn’t work on my self-hosted setup.
Let me know if you need any additional information or logs to help troubleshoot this issue.
A quick google search suggests that Linux optype 5.15.0-134-generic is maybe correlating to Ubuntu 20.04 LTS or 22.04 LTS, either of which is too old for some of the IFC parser’s dependencies. Ubuntu 24.x or newer are the only versions that I know to work.
I’ll do some more investigation tomorrow and have a chat with the team…
The new IFC importer is very different from the old one, so may be a bit more picky about things.
In the mean time, you can either downgrade your file import service image, or use the .legacyimporter.ifc naming to trigger the old web based importer.
Thank you so much for all the support and patience.
Indeed, my VM was running Ubuntu 22.04, and I apologize for the confusion—I hadn’t paid close attention to that detail the first time you mentioned it. However, I’ve now upgraded my VM to Ubuntu 24.04 using the command sudo do-release-upgrade. Below is the output of the lsb_release -a command:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04.2 LTS
Release: 24.04
Codename: noble
And the output of the uname -a
Linux optype 6.8.0-57-generic #59-Ubuntu SMP PREEMPT_DYNAMIC Sat Mar 15 17:40:59 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
Unfortunately, even after upgrading, I’m still encountering the same error.
I’ve rolled back to version 2.23.11, which seems to be the last version before the new IFC importer was introduced. Now everything is working again (since version 2.23.12 was released 13 days ago, the same timeframe as the post was published).
Once again, thank you for the support, and I’m happy to assist with any logs or additional context you might need. If you’d like to reach out to me privately, feel free to send me a direct message here on the forum.
Thank you, and congratulations on the product—it’s excellent!
Hi everyone, any updates on this issue? I tried updating to the latest version and I’m still getting the same error. I think it might be some misconfiguration on my part.
I’m concerned because I saw the notice about the new connectors and they won’t be compatible with the old server logic, which is exactly what we’re stuck with.
Just to clarify, you have the File Import Service running on Ubuntu 24 LTS, and you’re still seeing Operation is not supported on this platform. error on file imports?
The logs for the fileimport-service, using the command docker compose logs fileimport-service
are
{
"@l": "Error",
"component": "fileimport-service",
"taskId": "46fba7a696",
"fileId": "46fba7a696",
"fileType": "ifc",
"fileName": "small-modified.ifc",
"fileSize": 695313,
"userId": "b032e0fa83",
"projectId": "88d179a4e5",
"modelName": "arch",
"modelId": "4476fb83b5",
"err": {
"type": "Error",
"message": "Operation is not supported on this platform.",
"stack": "Error: Operation is not supported on this platform.\n at doTask (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:195:19)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n at async doStuff (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:348:13)\n at async main (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:365:5)"
},
"@t": "2025-05-19T13:13:29.572Z",
"@x": "Error: Operation is not supported on this platform.\n at doTask (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:195:19)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n at async doStuff (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:348:13)\n at async main (file:///speckle-server/packages/fileimport-service/dist/src/controller/daemon.js:365:5)",
"@mt": "Error processing task"
}
we’ve tried to replicate your issue, by going through setting up a speckle server based on our official deployment guide.
We’ve used an Ubuntu 24.04 LTS machine with docker compose to deploy our sample file.
But we were not able to replicate this supported platform issue. Are you by any chance using an ARM cpu architecture based VM? That is the only thing we can think of right now, that could cause this issue.
Could you please retry on an x86 cpu based VM with the docs linked above?
I don’t think I’m using an ARM CPU. The output of the uname -p command is “x86_64”.
In any case, since it worked for you, the issue is probably on my side. I’ll run a test by creating a new machine directly with Ubuntu 24.04 LTS. My current setup was upgraded from 22.04 to 24.04, so I suspect that might be causing the problem. I’ll also configure everything from scratch, which might help resolve the issue.
I’ll keep you updated and let you know if I discover anything new.
I have good news! After migrating all the data to a fresh VM with Ubuntu 24.04, reinstalling all services, and updating to version 2.25.0 of the Speckle Server, everything is back to normal.
I believe that the manual update of Ubuntu on the previous VM left some incomplete dependency or configuration behind, possibly an outdated library.
This experience serves as a learning opportunity for me and the Speckle team. If anyone faces a similar issue in the future, this solution might be helpful.
Thank you for your support, and I remain available if anyone needs help with this kind of problem.