ONLYOFFICE / onlyoffice-nextcloud

The app which enables the users to edit office documents from Nextcloud using ONLYOFFICE Document Server, allows multiple users to collaborate in real time and to save back those changes to Nextcloud
GNU Affero General Public License v3.0
559 stars 158 forks source link

Changes not saved back to Nextcloud #931

Open lheckemann opened 8 months ago

lheckemann commented 8 months ago

I'm running an onlyoffice document server in conjunction with the Nextcloud onlyoffice app. This mostly works fine, but the document server seems to be having some difficulty saving documents back to Nextcloud -- so when opened in onlyoffice, the current version of the document is shown, but downloading from nextcloud results in an outdated version of the document.

On save attempts, nextcloud logs:

{"reqId":"Bkn8IwgLdLOmpRmR0hyW","level":4,"time":"2024-01-27T11:15:56+00:00","remoteAddr":"192.168.25.16","user":"linusheckemann","app":"onlyoffice","method":"POST","url":"/apps/onlyoffice/track?doc=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VySWQiOiJsaW51c2hlY2tlbWFubiIsIm93bmVySWQiOiJsaW51c2hlY2tlbWFubiIsImZpbGVJZCI6NDc4NjA0LCJmaWxlUGF0aCI6Ii92bWhvc3RzLnhsc3giLCJzaGFyZVRva2VuIjpudWxsLCJhY3Rpb24iOiJ0cmFjayJ9._snAFc-oZgWYkAQv3hZas5n5ATXC6EynmUKKOOnyzxg","message":"Track without url: 478604 status 3","userAgent":"--","version":"28.0.1.1","data":{"app":"onlyoffice"}}

And the docserver logs:

[2024-01-27T11:15:56.267] [ERROR] [localhost] [1502319623] [ocgt3kj4l8v0_linusheckemann4] nodeJS - sendServerRequest error: url = https://cloud.<domain>/apps/onlyoffice/track?doc=>
{"message":"Url not found"}
    at Request._callback (/snapshot/server/build/server/Common/sources/utils.js)
    at Request.self.callback (/snapshot/server/build/server/Common/node_modules/request/request.js:185:22)
    at Request.emit (events.js:400:28)
    at Request.<anonymous> (/snapshot/server/build/server/Common/node_modules/request/request.js:1161:10)
    at Request.emit (events.js:400:28)
    at IncomingMessage.<anonymous> (/snapshot/server/build/server/Common/node_modules/request/request.js:1083:12)
    at Object.onceWrapper (events.js:519:28)
    at IncomingMessage.emit (events.js:412:35)
    at endReadableNT (internal/streams/readable.js:1333:12)
    at processTicksAndRejections (internal/process/task_queues.js:82:21)

Why might this be happening?

florian-obradovic commented 8 months ago

Same here with NC 27.6.1 on Ubuntu 20.04.6 LTS with:

On other 28.0.1 instances I saw ONLYOFFICE 9.0.0 available which is not offered on my small instance.

In my test I created a new spreadsheet, edited some cells and then download it. Opening the file on the desktop it's completely empty.

SergeyKorneyev commented 7 months ago

@lheckemann Status 3 is a response from the editor that means the file is corrupted. It's difficult to say what exactly happened based on the record you sent, since it's a response to a saving request. Could you post more records from the logs for the same file?

@florian-obradovic The Community Document Server app is developed and maintained by Nextcloud. This is the repository for the ONLYOFFICE integration app. Please post the issue in the relevant repo: https://github.com/nextcloud/documentserver_community

lheckemann commented 7 months ago

@SergeyKorneyev thanks for your response! There are no successful save requests; the documentserver log is filled with errors that look pretty much the same as the one above, and likewise but with status 7 when requesting a save explicitly via the menu.

I just tried creating a new spreadsheet, opening it, writing some text into it, then saving it. These are the only logs that come out:

{"reqId":"0jRYTP9XuvGzw8OsVdj1","level":4,"time":"2024-02-08T16:39:59+00:00","remoteAddr":"192.168.25.16","user":"linusheckemann","app":"onlyoffice","method":"POST","url":"/apps/onlyoffice/track?doc=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VySWQiOiJsaW51c2hlY2tlbWFubiIsIm93bmVySWQiOiJsaW51c2hlY2tlbWFubiIsImZpbGVJZCI6OTM3MDk0LCJmaWxlUGF0aCI6Ii9OZXcgc3ByZWFkc2hlZXQueGxzeCIsInNoYXJlVG9rZW4iOm51bGwsImFjdGlvbiI6InRyYWNrIn0.eWNpskHJOsPcpEtEImunEikPvHm07jOQCmfRAMxahC8","message":"Track without url: 937094 status 7","userAgent":"--","version":"28.0.2.5","data":{"app":"onlyoffice"}}
[2024-02-08T16:39:59.457] [ERROR] [localhost] [556603944] [ocgt3kj4l8v0_linusheckemann1] nodeJS - sendServerRequest error: url = https://<domain>/apps/onlyoffice/track?doc=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VySWQiOiJsaW51c2hlY2tlbWFubiIsIm93bmVySWQiOiJsaW51c2hlY2tlbWFubiIsImZpbGVJZCI6OTM3MDk0LCJmaWxlUGF0aCI6Ii9OZXcgc3ByZWFkc2hlZXQueGxzeCIsInNoYXJlVG9rZW4iOm51bGwsImFjdGlvbiI6InRyYWNrIn0.eWNpskHJOsPcpEtEImunEikPvHm07jOQCmfRAMxahC8;data = {"key":"556603944","status":7,"users":["ocgt3kj4l8v0_linusheckemann"],"actions":[{"type":2,"userid":"ocgt3kj4l8v0_linusheckemann"}],"lastsave":"2024-02-08T16:39:55.000Z","forcesavetype":1,"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJrZXkiOiI1NTY2MDM5NDQiLCJzdGF0dXMiOjcsInVzZXJzIjpbIm9jZ3Qza2o0bDh2MF9saW51c2hlY2tlbWFubiJdLCJhY3Rpb25zIjpbeyJ0eXBlIjoyLCJ1c2VyaWQiOiJvY2d0M2tqNGw4djBfbGludXNoZWNrZW1hbm4ifV0sImxhc3RzYXZlIjoiMjAyNC0wMi0wOFQxNjozOTo1NS4wMDBaIiwiZm9yY2VzYXZldHlwZSI6MSwiaWF0IjoxNzA3NDEwMzk5LCJleHAiOjE3MDc0MTA2OTl9.wGfGAm6tsQOMkRdxejnhaVu5v9E_txRhEfqg_X8PTXY"} Error: Error response: statusCode:400; headers:{"server":"nginx","date":"Thu, 08 Feb 2024 16:39:59 GMT","content-type":"application/json; charset=utf-8","content-length":"27","connection":"close","set-cookie":["oc_sessionPassphrase=<omitted>; path=/; secure; HttpOnly; SameSite=Lax","__Host-nc_sameSiteCookielax=true; path=/; httponly;secure; expires=Fri, 31-Dec-2100 23:59:59 GMT; SameSite=lax","__Host-nc_sameSiteCookiestrict=true; path=/; httponly;secure; expires=Fri, 31-Dec-2100 23:59:59 GMT; SameSite=strict","ocgt3kj4l8v0=<omitted>; path=/; secure; HttpOnly; SameSite=Lax"],"expires":"Thu, 19 Nov 1981 08:52:00 GMT","pragma":"no-cache","x-request-id":"0jRYTP9XuvGzw8OsVdj1","cache-control":"no-cache, no-store, must-revalidate","content-security-policy":"default-src 'none';base-uri 'none';manifest-src 'self';frame-ancestors 'none'","feature-policy":"autoplay 'none';camera 'none';fullscreen 'none';geolocation 'none';microphone 'none';payment 'none'","x-robots-tag":"noindex, nofollow","strict-transport-security":"max-age=31536000;"}; body:
{"message":"Url not found"}
    at Request._callback (/snapshot/server/build/server/Common/sources/utils.js)
    at Request.callback (/snapshot/server/build/server/Common/node_modules/request/request.js:185:22)
    at Request.emit (events.js:400:28)
    at Request.<anonymous> (/snapshot/server/build/server/Common/node_modules/request/request.js:1161:10)
    at Request.emit (events.js:400:28)
    at IncomingMessage.<anonymous> (/snapshot/server/build/server/Common/node_modules/request/request.js:1083:12)
    at Object.onceWrapper (events.js:519:28)
    at IncomingMessage.emit (events.js:412:35)
    at endReadableNT (internal/streams/readable.js:1333:12)
    at processTicksAndRejections (internal/process/task_queues.js:82:21)

The only other thing I've found in the log is right at startup:

[2024-02-07T08:18:00.199] [WARN] [localhost] [docId] [userId] nodeJS - Express server starting...
[2024-02-07T08:18:00.202] [WARN] [localhost] [docId] [userId] nodeJS - Failed to subscribe to plugin folder updates. When changing the list of plugins, you must restart the server. https://nodejs.org/docs/latest/api/fs.html#fs_availability
[2024-02-07T08:18:00.354] [WARN] [localhost] [docId] [userId] nodeJS - Express server listening on port 8000 in production-linux mode. Version: 7.5.0. Build: 125
[2024-02-07T08:18:01.613] [WARN] [localhost] [1049988882] [ocgt3kj4l8v0_<username>] nodeJS - error description: errorId = Other error
[2024-02-07T08:18:03.619] [WARN] [localhost] [89703313] [ocgt3kj4l8v0_<username>] nodeJS - error description: errorId = Other error
[2024-02-07T08:18:05.040] [WARN] [localhost] [3928012442] [ocgt3kj4l8v0_<username>] nodeJS - error description: errorId = Other error
SergeyKorneyev commented 7 months ago

In that case, the errors would probably be in the Converter logs. If the issue is easily reproducible, I would also suggest enabling some additional diagnostics:

  1. Find the "errorfiles" parameter in default.json and set its value to "error". With this option enabled, files from failed conversion attempts will be placed in the "error" directory in the Document Server's cache (/var/lib/onlyoffice/documentserver/App_Data/cache/files/ for Linux installations, for example).
  2. Open the /etc/onlyoffice/documentserver/log4js/production.json file and set the value of the "level" parameter to "DEBUG"
  3. Restart the Document Server services to apply the changes

After that, reproduce the issue and take a look at the Converter logs. If you want us to analyze this further, you could also send us the contents of the "error" folder.

lheckemann commented 6 months ago

I just noticed that x2t processes are constantly coredumping on SIGILL:

                #0  0x00007f97ad367b22 n/a (libdoctrenderer.so + 0x967b22)
                #1  0x00007f97acbec257 n/a (libdoctrenderer.so + 0x1ec257)
                #2  0x00007f97acb8672a n/a (libdoctrenderer.so + 0x18672a)
                #3  0x00007f97acb41636 n/a (libdoctrenderer.so + 0x141636)
                #4  0x00007f97acb38e3b _ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEERS6_ (libdoctrenderer.so + 0x138e3b)
                #5  0x000000000050fdb8 n/a (x2t + 0x10fdb8)
                #6  0x000000000052823b n/a (x2t + 0x12823b)
                #7  0x000000000053da9e n/a (x2t + 0x13da9e)
                #8  0x0000000000540d5e n/a (x2t + 0x140d5e)
                #9  0x0000000000483378 n/a (x2t + 0x83378)
                #10 0x00007f97b223efce __libc_start_call_main (/nix/store/xmprbk52mlcdsljz66m8yf7cf0xf36n1-glibc-2.38-44/lib/libc.so.6 + 0x27fce)
                #11 0x00007f97b223f089 __libc_start_main@@GLIBC_2.34 (/nix/store/xmprbk52mlcdsljz66m8yf7cf0xf36n1-glibc-2.38-44/lib/libc.so.6 + 0x28089)
                #12 0x000000000050d059 n/a (x2t + 0x10d059)

Is doctrenderer.so maybe built assuming CPU features that my machine doesn't have?

cpuinfo:

Architecture:            x86_64
  CPU op-mode(s):        32-bit, 64-bit
  Address sizes:         45 bits physical, 48 bits virtual
  Byte Order:            Little Endian
CPU(s):                  8
  On-line CPU(s) list:   0-7
Vendor ID:               GenuineIntel
  BIOS Vendor ID:        GenuineIntel
  Model name:            Intel(R) Xeon(R) Silver 4215 CPU @ 2.50GHz
    BIOS Model name:     Intel(R) Xeon(R) Silver 4215 CPU @ 2.50GHz  CPU @ 2.5GHz
    BIOS CPU family:     2
    CPU family:          6
    Model:               85
    Thread(s) per core:  1
    Core(s) per socket:  1
    Socket(s):           8
    Stepping:            7
    BogoMIPS:            4999.99
    Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl x
                         topology tsc_reliable nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c r
                         drand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid avx512f avx512dq rdse
                         ed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves arat pku ospke avx512_vnni md_clear flush_l1d arch_capabilities
Virtualization features:
  Hypervisor vendor:     VMware
  Virtualization type:   full
Caches (sum of all):
  L1d:                   256 KiB (8 instances)
  L1i:                   256 KiB (8 instances)
  L2:                    8 MiB (8 instances)
  L3:                    88 MiB (8 instances)
NUMA:
  NUMA node(s):          1
  NUMA node0 CPU(s):     0-7
lheckemann commented 6 months ago

I'm not seeing any files popping up in the location you mentioned even after making the config changes you suggested.

SergeyKorneyev commented 6 months ago

The system records on x2t don't tell us much, I'm afraid, and it's strange that the error folder is empty. You mentioned that you're testing spreadsheets. Can the issue be reproduced with other document types (DOCX or PPTX) ?

ferdiga commented 6 months ago

after Update to 28.0.3 ONLYOFFICE (internal) became the default App for documents (docx, xlsx, ...), although I had collabora configured

lheckemann commented 6 months ago

Sorry, turns out I was getting the config wrong. Here's an example error dir! error.zip

The problem does occur with text documents as well as spreadsheets.

MarcelCoding commented 5 months ago

I have the same error, including the core dump. It looks (besides the addresses) the same. I am also able to find the error from console.txt https://github.com/ONLYOFFICE/onlyoffice-nextcloud/issues/931#issuecomment-2026896264 in journalctl. (but it happens after the coredump)

I am Running nextcloud 28.0.4 and onlyoffice 8.0.1.31 (deb download). on NixOS 23.11

onlyoffice-logs.log

I am happy helping with debugging.

MarcelCoding commented 5 months ago

I've self-compiled the libdocrenderer.so and got some functions names in addition to the function pointers.



                                                    Module libgcc_s.so.1 without build-id.
                                                    Module libstdc++.so.6 without build-id.
                                                    Module libboost_date_time.so.1.75.0 without build-id.
                                                    Module libdoctrenderer.so without build-id.
                                                    Stack trace of thread 2020:
                                                    #0  0x00007fa955e41892 _ZN2v84base2OS5AbortEv (libdoctrenderer.so + 0x1641892)
                                                    #1  0x00007fa954a0f38e _ZN2v85Utils16ReportApiFailureEPKcS2_ (libdoctrenderer.so + 0x20f38e)
                                                    #2  0x00007fa95499a93a _ZN8NSJSBase18CJSValueV8TemplateIN2v85ValueENS_8CJSValueEE8toObjectEv (libdoctrenderer.so + 0x19a93a)
                                                    #3  0x00007fa954954fa7 _ZN14NSDoctRenderer21CDoctRenderer_Private13ExecuteScriptERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS2_IwS3_IwESaIwEEERSB_SE_ (libdoctrenderer.so + 0x154fa7)
                                                    #4  0x00007fa95494da79 _ZN14NSDoctRenderer13CDoctrenderer7ExecuteERKNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEERS6_ (libdoctrenderer.so + 0x14da79)
                                                    #5  0x0000000000519478 n/a (x2t + 0x119478)
                                                    #6  0x000000000052d480 n/a (x2t + 0x12d480)
                                                    #7  0x0000000000536b20 n/a (x2t + 0x136b20)
                                                    #8  0x000000000053cc4f n/a (x2t + 0x13cc4f)
                                                    #9  0x00000000004848ac n/a (x2t + 0x848ac)
                                                    #10 0x00007fa95423efce __libc_start_call_main (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x27fce)
                                                    #11 0x00007fa95423f089 __libc_start_main@@GLIBC_2.34 (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x28089)
                                                    #12 0x0000000000510129 n/a (x2t + 0x110129)

                                                    Stack trace of thread 2021:
                                                    #0  0x00007fa95429ecf6 __futex_abstimed_wait_common (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x87cf6)
                                                    #1  0x00007fa9542a14e8 pthread_cond_wait@@GLIBC_2.3.2 (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x8a4e8)
                                                    #2  0x00007fa955e39adc _ZN2v84base17ConditionVariable4WaitEPNS0_5MutexE (libdoctrenderer.so + 0x1639adc)
                                                    #3  0x00007fa9549fd0f3 _ZN2v88platform16DelayedTaskQueue7GetNextEv (libdoctrenderer.so + 0x1fd0f3)
                                                    #4  0x00007fa9549fc3a5 _ZN2v88platform30DefaultWorkerThreadsTaskRunner7GetNextEv (libdoctrenderer.so + 0x1fc3a5)
                                                    #5  0x00007fa9549fc3d4 _ZN2v88platform30DefaultWorkerThreadsTaskRunner12WorkerThread3RunEv (libdoctrenderer.so + 0x1fc3d4)
                                                    #6  0x00007fa955e41480 _ZN2v84baseL11ThreadEntryEPv (libdoctrenderer.so + 0x1641480)
                                                    #7  0x00007fa9542a20e4 start_thread (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x8b0e4)
                                                    #8  0x00007fa95432475c __clone3 (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x10d75c)

                                                    Stack trace of thread 2023:
                                                    #0  0x00007fa95429ecf6 __futex_abstimed_wait_common (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x87cf6)
                                                    #1  0x00007fa9542a14e8 pthread_cond_wait@@GLIBC_2.3.2 (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x8a4e8)
                                                    #2  0x00007fa955e39adc _ZN2v84base17ConditionVariable4WaitEPNS0_5MutexE (libdoctrenderer.so + 0x1639adc)
                                                    #3  0x00007fa9549fd0f3 _ZN2v88platform16DelayedTaskQueue7GetNextEv (libdoctrenderer.so + 0x1fd0f3)
                                                    #4  0x00007fa9549fc3a5 _ZN2v88platform30DefaultWorkerThreadsTaskRunner7GetNextEv (libdoctrenderer.so + 0x1fc3a5)
                                                    #5  0x00007fa9549fc3d4 _ZN2v88platform30DefaultWorkerThreadsTaskRunner12WorkerThread3RunEv (libdoctrenderer.so + 0x1fc3d4)
                                                    #6  0x00007fa955e41480 _ZN2v84baseL11ThreadEntryEPv (libdoctrenderer.so + 0x1641480)
                                                    #7  0x00007fa9542a20e4 start_thread (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x8b0e4)
                                                    #8  0x00007fa95432475c __clone3 (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x10d75c)

                                                    Stack trace of thread 2022:
                                                    #0  0x00007fa95429ecf6 __futex_abstimed_wait_common (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x87cf6)
                                                    #1  0x00007fa9542a14e8 pthread_cond_wait@@GLIBC_2.3.2 (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x8a4e8)
                                                    #2  0x00007fa955e39adc _ZN2v84base17ConditionVariable4WaitEPNS0_5MutexE (libdoctrenderer.so + 0x1639adc)
                                                    #3  0x00007fa9549fd0f3 _ZN2v88platform16DelayedTaskQueue7GetNextEv (libdoctrenderer.so + 0x1fd0f3)
                                                    #4  0x00007fa9549fc3a5 _ZN2v88platform30DefaultWorkerThreadsTaskRunner7GetNextEv (libdoctrenderer.so + 0x1fc3a5)
                                                    #5  0x00007fa9549fc3d4 _ZN2v88platform30DefaultWorkerThreadsTaskRunner12WorkerThread3RunEv (libdoctrenderer.so + 0x1fc3d4)
                                                    #6  0x00007fa955e41480 _ZN2v84baseL11ThreadEntryEPv (libdoctrenderer.so + 0x1641480)
                                                    #7  0x00007fa9542a20e4 start_thread (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x8b0e4)
                                                    #8  0x00007fa95432475c __clone3 (/nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 + 0x10d75c)
                                                    ELF object binary architecture: AMD x86-64
MarcelCoding commented 5 months ago

The system records on x2t don't tell us much, I'm afraid, and it's strange that the error folder is empty. You mentioned that you're testing spreadsheets. Can the issue be reproduced with other document types (DOCX or PPTX) ?

@SergeyKorneyev

Regarding types:

Andreas02-dev commented 3 months ago

@lheckemann @MarcelCoding @SergeyKorneyev

Has any further progress been made in triaging this issue? I am encountering the exact same issue with OnlyOffice Docs Server version 7.5.1.23 and OnlyOffice Connector version 9.2.2 on Nextcloud 29.0.1.

My current 'workaround' on my personal cloud is to open the document, download the document using the Onlyoffice interface and re-upload it to my Nextcloud in order to save the changes, but this is quite tedious.

If more information is required in order to triage, please let me know.

MarcelCoding commented 3 months ago

I have given up. I am just using the docker container again...

voronind-com commented 3 months ago

Any workarounds for this issue?

MarcelCoding commented 3 months ago

I've now deployed it using podman: https://github.com/dd-ix/nix-config/blob/master/modules%2Fmanagement%2Fnextcloud.nix#L97

Go-rom commented 2 months ago

Hello everybody,

i'm just encountering a weird bug that might be related to the one described here. I'm working right now on a spreadsheet (i'm the creator), the work on that file is done and now i want to share the folder containing the spreadsheet and other stuff in read-only mode.

When i test the sharing link (in private mode), OnlyOffice displays a previous unfinished version of my spreadsheet. I've found a workaround by granting the write permission to the shared folder. In that way, people getting the link can display the spreadsheet in its last version.

I don't manage the server hosting OnlyOffice but i can ask for logs, just tell me.

raboof commented 1 month ago

I'm also seeing this (also on NixOS). This might be the same issue as https://github.com/ONLYOFFICE/DocumentServer/issues/2450

ferdiga commented 1 month ago

sorry to say - it's a drama that this is not solved and at the same time offered as a "production" tool without mentioning this issue.

raboof commented 1 month ago

I've added a warning note to https://wiki.nixos.org/wiki/Nextcloud

raboof commented 1 month ago

I did some more digging: x2t invokes some javascript code using v8. That (I think the invocation of NativeOpenFileData though it is a little unclear) crashes with something like:

TypeError: Cannot read properties of undefined (reading 'length')
    at Object.a.AscCommon.wK.decode.a.AscCommon.wK.decode (<anonymous>:11889:172)
    at e (<anonymous>:11801:526)
    at k.En (<anonymous>:11821:377)
    at Object.En (<anonymous>:11826:177)
    at h.e.Rtd (<anonymous>:10270:233)
    at h.Rtd (<anonymous>:10619:341)
    at <anonymous>:10212:473
    at Ia (<anonymous>:9667:316)
    at Object.a.AscCommon.zmh (<anonymous>:9843:129)
    at h.e.Hsa (<anonymous>:10212:436)

#
# Fatal error in v8::ToLocalChecked
# Empty MaybeLocal.
#

It looks like the coredump is just v8 aborting due to this error. So I guess the next step here is to rebuild word/sdk-all.js and word/sdk-all-min.js with the --map flag (which enables outputting mapping files, https://github.com/google/closure-compiler/wiki/Flags-and-Options) so we can make sense of the stack trace.

raboof commented 1 month ago

OK, after deciphering it turns out that crash was a red herring: it was due to me not pointing at AllFonts.js correctly.

With that my built-from-source with-debugging x2t (https://github.com/NixOS/nixpkgs/pull/338794) actually makes onlyoffice work fine! Somewhat unsatisfying that it doesn't explain the original problem, but this way of packaging has many advantages over using everything from the binary .deb, so this might be an improvement worth considering anyway.