It's all about the answers!

Ask a question

I don't understand all the different repotools indexing commands

Glenn Bardwell (57621327) | asked Sep 16 '14, 11:00 a.m.
retagged Nov 27 '18, 8:40 a.m. by Ken Tessier (84117)
Repotools includes
repotools -reindex all
repotools -synchronizeJFSIndexes.

repotools -reindex scope=all
repotools -reindex scope=query
repotools -reindex scope=search
repotools -
repotool -

when should I use one versus another?

5 answers

permanent link
Ken Tessier (84117) | answered Nov 27 '18, 8:40 a.m.

permanent link
Ralph Schoon (59.6k23643) | answered Nov 06 '18, 10:49 a.m.

 Hi Rosa,

as an answer here: 

With respect to your question, there is an issue that customers have reported where Back links from RTC to DNG are missing. L3 has created a follow up action that fixes this. There is a task to integrate the code into the work item command line to be able to run fix runs.

permanent link
Rosa Naranjo (2.9k11422) | answered Jul 21 '17, 4:38 p.m.

Will any of these repotools reindex commands help with resolve a missing link? For example, RTC workitem linked to DNG artifact, but link does not show on the DNG side?

permanent link
KrishnaKanth Naik (7651915) | answered Jan 28 '16, 4:52 a.m.

Could we also have some inputs on the functionality of -compacttdb --Compact the RDF indexes too on this very comment?

If the reindex is reducing the size of the indices to half and so does -compacttd, what is it that this command does? Is there any specific switch with -verifyJFSIndexes that could prompt the admins to opt for a compacttdb?

Glenn Bardwell commented Jan 29 '16, 5:59 p.m.

The -verifyJFSIndexes command reads the indices into Jena Triple store data structures. From there the data structures are checked to see if they are internally consistent. That is that the file in the index matches the actual index files, that the data structures contain non-empty data, etc. The extended command looks for more extensively for issues.

If you find an issue with verifyJFSIndexes, you should reindex (repotools<cmd> -reindex all) . The tool makes this suggestion.

The -compactdb option changes the representation of the indices on disk, but doesn't affect their underlying value. Data is sometimes stored in journals, lists of commands to apply to the index data, as opposed to the actual data that makes up the index. If the journal contains a list of commands that was committed, it can be played back up to the commit point. This reduces the total index size.

permanent link
Glenn Bardwell (57621327) | answered Sep 16 '14, 11:01 a.m.
edited Dec 05 '18, 3:05 p.m.

Use repotools -rebuildTextIndices when you have one of the following symptoms:

You run a quick search (the edit box in the lower left hand side of the thick client, or upper right side of the web client)  for a workitem or planning item and the result isn't found as expected. Make sure there's also an error in the ccm.log or qm.log. The error often will reference Lucene. CRJAZ8201E is also a common symptom.

You may also see the problem above if you run a query that includes a full text condition as part of a larger query.  In either case, use repotools-qm.bat or repotools-ccm bat to reindex depending on which application is failing.

Use repotools -reindex search when you have the following symptoms:
You run a quick search (the edit box in the lower left hand side of the thick client, or upper right side of the web client) for a RM requirement, and you don't get the result you expected. The error often will reference Lucene.
When reindexing use repotools-rm.bat for RM issues.

Use repotools -reindex query when you have the following symptoms:
You open a view in RM or Open a dashboard and you don't get the result you expected and there is an error in the application log (rm.log or jts.log ) indicating the index is corrupt. The error often references Jena.

You look at the application diagnostics page and see an error reported for JFS index or JFS storage, and when you look at the application log file (rm.log, jts.log, ccm.log - but only if you're using Enterprise Extensions), and you see an error. The error often references Jena.

Use repotools -rebuildIndices when you see an error in the Database Indices section of the diagnostics.

Use  repotools -synchronizeJFSIndexes if the index is found to be corrupt via  repotools -verifyJFSIndexes.
Here are the steps to fix the corruption. Restore the most recent indices that pass repotools -verifyJFSIndexes, then run repotools -synchronizeJFSIndexes to catch the indices up with the underlying database.

Here's some background explaining how repotools -verifyJFSIndexes and repotools -synchronizeJFSIndexes work. Each time you save an artifact in RM, it's stored twice - once in the database, and once in the filesystem Jena indices.

When you open an artifact (e.g. a requirement), the requirement is fetched from the database. When you open a RM view, RM queries the indices via Jena indices. The indices need to be in sync with the database. When you restore the indices, but not the database, you need to sync the indices to to the database via repotools -synchronizeJFSIndexes.

Don't use repotools -reindex scope=all. Instead use repotools -reindex all.

Your answer

Register or to post your answer.