|
From: Ihe O. <ihe...@gm...> - 2014-03-28 21:30:57
|
So Wolfgang's diagnosis is in. His forensic analysis means you too can re's how to replicate my "Gee man. I don't believe it. All my element tags. They have all gone". The fault originates to a feature of John Cowan's Tagsoup that is worth being aware of. https://groups.google.com/forum/#!topic/tagsoup-friends/sM4WW7Lwe2I to summarise it seems that having an embedded quote in an attribute string seems to cause tagsoup to tokenize the entire content of the attribute delimited by whitespace. This causes a recreateable problem in eXist which Wolfgang summarised as follows "It turns out the problem is caused by an overflow in the symbol table mapping local names to internal ids. I can see there are more than 30000 distinct attribute names in the data set. " On Sun, Mar 23, 2014 at 11:14 AM, <wol...@ex...> wrote: >> Well this is what is in the xsl file after running the code. >> >> <xsl: xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >> xmlns:xs="http://www.w3.org/2001/XMLSchema" ="xs" ="2.0"> >> <xsl: ="*"/> >> <xsl: ="yes" ="xml"/> > > To me this looks like the the look up of local names in the symbol table is failing during serialization. The symbol table maps namespaces and element/attribute names to the numeric ids used internally. It is continuously synced to disk during writes, but eXist keeps an in-memory copy (basically a simple set of hash tables). I would thus suspect the in-memory copy got messed up and was later reloaded during the restart. > > A symbol table getting out of sync is certainly a severe issue. We have not ever seen this happen during the past years though. If you or someone else is encountering it again, please report. > > Wolfgang |