Nataila,
Good suggestion, thanks.It helped me to see that I may face a more
difficult problem. Some "symbol docs" cannot be found!
The following hierarchy is what I see in the Ugly Browser (for 1.1) ...
| db
| system
| SysConfig
| database.xml (document)
| SysSymbols
| system_SysConfig (document)
| w3c-local_meta (document)
Now, the part under SysSymbols does look strange!
I revived the old Xindice 1.0 version I have kept around, to have
something to compare to.
And there I see that much data seems to be missing in my 1.1 system.
Tragically, core data has gone away:
- system_SysAccess
- system_SysGroups
- system_SysObjects
- system_SysUsers
But also the 100+ application data collections (only one such collection
is seen)
For completeness, further down I reproduce the contents of the three
documents thar *can* be seen.
To get some idea about whether actual files have disappeared in the file
system, I looked at that,
but could not find anything unexpected (i.e., existence and size looked OK)
| ../../../opt/xindice-1.1/w3c/system/SysAccess:
| total 1
| -rwxr--r--+ 1 olleo sics 12288 2003-08-12 19:36 SysAccess.tbl
|
| ../../../opt/xindice-1.1/w3c/system/SysConfig:
| total 5
| -rw-rw-r--+ 1 olleo sics 45056 2010-06-09 10:56 SysConfig.tbl
|
| ../../../opt/xindice-1.1/w3c/system/SysGroups:
| total 1
| -rwxr--r--+ 1 olleo sics 12288 2003-08-12 19:36 SysGroups.tbl
|
| ../../../opt/xindice-1.1/w3c/system/SysObjects:
| total 1
| -rwxr--r--+ 1 olleo sics 12288 2003-08-12 19:36 SysObjects.tbl
|
| ../../../opt/xindice-1.1/w3c/system/SysSymbols:
| total 52
| -rw-rw-r--+ 1 olleo sics 4202496 2010-06-09 10:56 SysSymbols.tbl
|
| ../../../opt/xindice-1.1/w3c/system/SysUsers:
| total 1
| -rwxr--r--+ 1 olleo sics 12288 2003-08-12 19:36 SysUsers.tbl
The for the old Xindice 1.0, exactly the same was seen, except that
SysSymbols.tbl had a size of 659456. (1.0 is run on a Windows/NT, 1.1 on
Linux)
So, the 64,000 dollar question is: how is Xindice bootstrapped to find
the system data? Now it fails to find much data and does this depend on
information *in* the storage hierarch? Or does it depend on some other
configuration data that no longer is in a healtthy state?
Really, I have no good clue how to progress on this.
/olle
==================================================================
The accessible system files
______________________
system_SysConfig
<?xml version="1.0" encoding="UTF-8"?>
<?xindice-class org.apache.xindice.xml.SymbolTable?>
<symbols>
<symbol name="filer" id="6"/>
<symbol name="compressed" id="5"/>
<symbol name="xmlobjects" id="2"/>
<symbol name="pagecount" id="8"/>
<symbol name="name" id="1"/>
<symbol name="indexes" id="9"/>
<symbol name="class" id="7"/>
<symbol name="collection" id="4"/>
<symbol name="collections" id="3"/>
<symbol name="database" id="0"/>
</symbols>
______________________
w3c-local_meta
<?xml version="1.0" encoding="UTF-8"?>
<?xindice-class org.apache.xindice.xml.SymbolTable?>
<symbols>
<symbol name="content" id="2"/>
<symbol name="static" id="1"/>
<symbol name="meta" id="0"/>
</symbols>
______________________
database.xml
<?xml version="1.0" encoding="UTF-8"?>
<database name="db">
<xmlobjects/>
<collections>
<collection compressed="true" name="w3c">
<filer class="org.apache.xindice.core.filer.BTreeFiler" pagecount="1"/>
<indexes/>
<xmlobjects/>
... and so on ...
</collection>
<collection compressed="true" name="w3c-local">
<filer class="org.apache.xindice.core.filer.BTreeFiler" pagecount="1"/>
<indexes/>
<xmlobjects/>
.... and so on ....
</collection>
</collections>
</database>
On 2010-06-10 03:15, Natalia Shilenkova wrote:
Hi Olle,
Looking at the exception stack trace, I would say that you've got problem with
collection symbol table. That would explain your problems accessing all the
documents.
I was able to reproduce exactly the same stack trace by intentionally modifying
symbol table.
When Xindice saves a document to the collection, the document is compressed,
which means that its element and attribute names are replaced with generated
identifiers. The information about these identifiers saved in the collection
symbol table. When retrieving the document, Xindice looks up the identifiers
and replaces them with actual names. If it encounters identifier that cannot be
found in the table... well, that exception is what happens.
I would suggest checking the symbol table first - it is just XML document that
is located in /db/system/SysSymbols collection and document name is the same as
collection path, but fragments of the path are separated with '_' instead of
'/'. So, for collection /db/a/b/c it will be a_b_c. Check if anything looks
out of place, maybe you can see right away that some element or attribute names
are missing...
This is an example of symbol table for SysConfig collection:
<?xml version="1.0" encoding="UTF-8"?>
<?xindice-class org.apache.xindice.xml.SymbolTable?>
<symbols>
<symbol name="filer" id="6"/>
<symbol name="inline-metadata" id="5"/>
<symbol name="compressed" id="4"/>
<symbol name="name" id="1"/>
<symbol name="indexes" id="8"/>
<symbol name="class" id="7"/>
<symbol name="collection" id="2"/>
<symbol name="collections" id="3"/>
<symbol name="database" id="0"/>
</symbols>
Regards,
Natalia
--
------------------------------------------------------------------
Olle Olsson ol...@sics.se Tel: +46 8 633 15 19 Fax: +46 8 751 72 30
[Svenska W3C-kontoret: ol...@w3.org]
SICS [Swedish Institute of Computer Science]
Box 1263
SE - 164 29 Kista
Sweden
------------------------------------------------------------------