The modules collection/folder of the app has multiple modules written in xquery. They import one another with the import module namespace command and use functions from each other. So you could say they are very throroughly cross-linked.
They are quite large roughly 6000 lines altogether.
When we save any of the modules, we have noticed that they save progressively slower after each save. Ultimately they will stop saving and the save process times out. Sometimes you can save 3 times and other times 30.
Code: Select all
Cannot save the file: Failed to read server's response: Read timed out
Then the collection cannot be opened anymore and only restarting eXist helps. A thread saving the binary seems to get stuck inside eXist.
When we moved all the code into a single file, the save problems vanished.
We tried eXide (the built in eXist editor) and it saves the crosslinked modules without timing out.
We also tested with a local eXist setup and the problems remained.
Is there something we need to know of the way oxygen saves crosslinked modules? Is it something to be avoided? Is there some setting we could fiddle with inside oxygen?