Hi Marc,
so if I understood correctly it worked on Windows, but not on Unix (Max)?
This fits quite nicely with our bug, which we also only observed on unix and linux machines, but not on Windows. So I am quite hopeful it should disappear with the latest snapshot.
Cheers Dirk
On 07/07/2016 10:38 AM, Marc van Grootel wrote:
Hi Dirk,
I'll keep an eye on it.
This morning I pulled the code I worked on at home to my work machine and there the error didn't occur (still with 8.5 release). At home I am on Mac at work on Windows. Though I am sure I saw a similar error on work project too.
Not sure what's going on. I will try snapshot this evening at home to see if it can make the error go away.
Thanks, --Marc
On Thu, Jul 7, 2016 at 9:53 AM, Dirk Kirsten dk@basex.org wrote:
Hi Marc,
I wonder if this is in connection to the doc() bug I stumbled upon yesterday. It was a tricky one, but Christian (as always) immediately fixed it:https://github.com/BaseXdb/basex/commit/bd57211617cd831604850a8e8710bf1759c1...
I am not sure whether this has the same cause, but you might want to try the latest snapshot.
Cheers Dirk
On 07/06/2016 10:21 PM, Marc van Grootel wrote:
Hi,
With the 8.5 branch i've started seeing the following error a lot lately.
[XUDY0016] Documents in path 'docbook/chapters/mu.xml' can only be
replaced once.
This is the example function I used to trigger this.
declare %updating function local:import() { for $file in file:list($srcdir, true(), '*.xml') let $path := $srcdir || $file where not(file:is-dir($path)) return db:replace('docbook', $file, doc(trace($path,'X: '))) };
(lifted from the BaseX documentation example on file:list)
Note that the path exists and contains several XML files. It happened a lot too on a work project so I've seen this in several situations now. On the latter project it went away after going back to a 8.4 build. Sorry for not reporting sooner as I was under severe time pressure at the time.
I tried switching MIXUPDATES on and off. That doesn't make a difference.
I have two XML files in this $srcdir and when I put a trace around $path I see that both of them are listed before it stops with an error message that includes the path of the first one.
X: "/Users/marcvangrootel/projects/xml/book/chapters/mu.xml" X: "/Users/marcvangrootel/projects/xml/book/chapters/test.xml" Stopped at /Users/marcvangrootel/projects/xml/c4/test/demo.xq, 30/20: [XUDY0016] Documents in path 'docbook/chapters/mu.xml' can only be
replaced once.
Odd!
--Marc
-- Dirk Kirsten, BaseX GmbH, http://basexgmbh.de |-- Firmensitz: Blarerstrasse 56, 78462 Konstanz |-- Registergericht Freiburg, HRB: 708285, Geschäftsführer: | Dr. Christian Grün, Dr. Alexander Holupirek, Michael Seiferle `-- Phone: 0049 7531 91 68 276, Fax: 0049 7531 20 05 22