Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
2 ตอบกลับ
425 มุมมอง


After calling the cmd upgrade, everything seems to work fine but when I navigate to /web in an incognito tab I get this FileNotFoundError. and the page does not fully render. When I login, it renders nothing and server logs keep giving me this FileNotFoundError. I also noticed it happens on incognito tab or in a new browser only. Browsers where I was logged in had no issues loading the site

The odoo upgrade script found my filestore at /opt/odoo/.local/share/Odoo/ and copied the files to the latest version. I have checked that my data_dir path is set in the new version. I also noticed that the files causing the errors did not exist in v17 so im not sure which module is causing the issue 


I have also tried upgrading base, web, website module and some other modules. 


Any suggestions? I would really appreciate your help



Traceback (most recent call last):

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2554, in __call__

    response = request._serve_db()

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2081, in _serve_db

    return self._transactioning(

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2144, in _transactioning

    return service_model.retrying(func, env=self.env)

  File "/opt/odoo/18.0/odoo-18.0/odoo/service/model.py", line 156, in retrying

    result = func()

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2111, in _serve_ir_http

    response = self.dispatcher.dispatch(rule.endpoint, args)

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2272, in dispatch

    return self.request.registry['ir.http']._dispatch(endpoint)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_http.py", line 333, in _dispatch

    result = endpoint(**request.params)

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 754, in route_wrapper

    result = endpoint(self, *args, **params_ok)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/web/controllers/binary.py", line 149, in content_assets

    stream = env['ir.binary']._get_stream_from(attachment, 'raw', filename)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/documents/models/ir_binary.py", line 30, in _get_stream_from

    return super()._get_stream_from(

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_binary.py", line 127, in _get_stream_from

    stream = self._record_to_stream(record, field_name)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/documents/models/ir_binary.py", line 13, in _record_to_stream

    return super()._record_to_stream(record, field_name)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_binary.py", line 74, in _record_to_stream

    return record._to_http_stream()

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_attachment.py", line 805, in _to_http_stream

    stat = os.stat(stream.path)

FileNotFoundError: [Errno 2] No such file or directory: '/opt/odoo/.local/share/Odoo/filestore/main/c2/c248a0db8aac13362c24532a3c00938b1688fd3a'

2025-09-24 08:41:53,697 1300488 INFO main werkzeug: 87.188.154.109 - - [24/Sep/2025 08:41:53] "GET /web/assets/88712f7/web.assets_web.min.css HTTP/1.0" 500 - 3 0.003 0.010

2025-09-24 08:41:53,699 1300488 ERROR main odoo.http: Exception during request handling.

Traceback (most recent call last):

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2554, in __call__

    response = request._serve_db()

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2081, in _serve_db

    return self._transactioning(

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2144, in _transactioning

    return service_model.retrying(func, env=self.env)

  File "/opt/odoo/18.0/odoo-18.0/odoo/service/model.py", line 156, in retrying

    result = func()

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2111, in _serve_ir_http

    response = self.dispatcher.dispatch(rule.endpoint, args)

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2272, in dispatch

    return self.request.registry['ir.http']._dispatch(endpoint)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_http.py", line 333, in _dispatch

    result = endpoint(**request.params)

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 754, in route_wrapper

    result = endpoint(self, *args, **params_ok)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/web/controllers/binary.py", line 149, in content_assets

    stream = env['ir.binary']._get_stream_from(attachment, 'raw', filename)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/documents/models/ir_binary.py", line 30, in _get_stream_from

    return super()._get_stream_from(

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_binary.py", line 127, in _get_stream_from

    stream = self._record_to_stream(record, field_name)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/documents/models/ir_binary.py", line 13, in _record_to_stream

    return super()._record_to_stream(record, field_name)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_binary.py", line 74, in _record_to_stream

    return record._to_http_stream()

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_attachment.py", line 805, in _to_http_stream

    stat = os.stat(stream.path)

FileNotFoundError: [Errno 2] No such file or directory: '/opt/odoo/.local/share/Odoo/filestore/main/74/740ba701f9e1ba2d98c4cbc78d7c35642e244b4e'

2025-09-24 08:41:53,700 1300488 INFO main werkzeug: 87.188.154.109 - - [24/Sep/2025 08:41:53] "GET /web/assets/3d22b19/web.assets_web.min.js HTTP/1.0" 500 - 3 0.003 0.009

2025-09-24 08:41:53,727 1300488 ERROR main odoo.http: Exception during request handling.

Traceback (most recent call last):

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2554, in __call__

    response = request._serve_db()

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2081, in _serve_db

    return self._transactioning(

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2144, in _transactioning

    return service_model.retrying(func, env=self.env)

  File "/opt/odoo/18.0/odoo-18.0/odoo/service/model.py", line 156, in retrying

    result = func()

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2111, in _serve_ir_http

    response = self.dispatcher.dispatch(rule.endpoint, args)

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 2272, in dispatch

    return self.request.registry['ir.http']._dispatch(endpoint)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_http.py", line 333, in _dispatch

    result = endpoint(**request.params)

  File "/opt/odoo/18.0/odoo-18.0/odoo/http.py", line 754, in route_wrapper

    result = endpoint(self, *args, **params_ok)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/web/controllers/binary.py", line 149, in content_assets

    stream = env['ir.binary']._get_stream_from(attachment, 'raw', filename)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/documents/models/ir_binary.py", line 30, in _get_stream_from

    return super()._get_stream_from(

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_binary.py", line 127, in _get_stream_from

    stream = self._record_to_stream(record, field_name)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/documents/models/ir_binary.py", line 13, in _record_to_stream

    return super()._record_to_stream(record, field_name)

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_binary.py", line 74, in _record_to_stream

    return record._to_http_stream()

  File "/opt/odoo/18.0/odoo-18.0/odoo/addons/base/models/ir_attachment.py", line 805, in _to_http_stream

    stat = os.stat(stream.path)

FileNotFoundError: [Errno 2] No such file or directory: '/opt/odoo/.local/share/Odoo/filestore/main/6e/6ee3dadbddd907b4cda8cd4742ea26f607ff5dc3'

อวตาร
ละทิ้ง

"Running the upgrade" - if you used the Odoo upgrade service - upgrade.odoo.com - you can open a Ticket with Odoo Support - odoo.com/help

ผู้เขียน

Thanks Ray. Will do that

คำตอบที่ดีที่สุด

Hello Tony,



  This issue typically occurs when the filestore for your Odoo instance is either missing files or the files are not correctly linked after an upgrade. Here's how you can address this problem:

  1. Verify the filestore path in the Odoo configuration file (usually named odoo.conf) to ensure it's correctly pointing to '/opt/odoo/.local/share/Odoo/'.

  2. Check the permissions of the filestore directory to ensure that the Odoo user has read and write access. You can do this with the command: sudo chown -R odoo: /opt/odoo/.local/share/Odoo/ and sudo chmod -R 755 /opt/odoo/.local/share/Odoo/.

  3. If the files mentioned in the errors truly do not exist in the filestore, it might be necessary to restore these from a backup. If a backup is not available, you may need to manually re-upload the missing files through the Odoo interface, if possible.

  4. After ensuring the filestore is correctly set up and permissions are fixed, restart your Odoo service with sudo service odoo restart (adjust the command based on your Odoo service name, which might be odoo-server or similar).

  5. Clear your browser cache or try accessing Odoo in an incognito window again to see if the issue persists.


For personalized assistance:
https://www.pragtech.co.in/contact-us-mql.html

อวตาร
ละทิ้ง
คำตอบที่ดีที่สุด

Hi,


After upgrading to Odoo 18, the system throws FileNotFoundError because ir.attachment records point to missing files in the filestore. This breaks web asset loading and prevents the UI from rendering.


To fix it, ensure your data_dir points to the correct filestore, copy any missing files from your old v17 filestore, and rebuild assets by upgrading the web/website modules or clearing the cache. If needed, clean up broken attachments so Odoo can regenerate them.


Hope it helps

อวตาร
ละทิ้ง
ผู้เขียน

Ok thanks. I will try copying the filestore. However I noticed the upgrade script did just that. The folder size was exactly the same. Will update on results

Related Posts ตอบกลับ มุมมอง กิจกรรม
2
ก.ย. 25
567
0
เม.ย. 25
1464
Upgrade 17 to 18 on prem แก้ไขแล้ว
2
ม.ค. 25
2956
Upgrade Odoo v16 to v17 on windows แก้ไขแล้ว
2
ม.ค. 25
3179
0
เม.ย. 23
3299