Error while restoring some Log Manager's partitions on a different system

  • 7008387
  • 15-Apr-2011
  • 11-Mar-2013

Environment

Novell Log Manager 1.0
Novell Log Manager 1.1
Novell Log Manager 1.2

Situation

Restoring a Sentinel Log Manager's partition on a different system by importing it with the Data Restoration tool works just fine, but you get an error when you try to search for events which are contained in that partition. An error similar to the following is generated into the server0.0.log log file:

Tue Mar 29 09:45:26 CEST 2011|SEVERE|Thread-94|esecurity.ccs.comp.event.indexedlog.IndexedLogSearchJob.run
    IO Error performing search.; Exception directory '/archive/696080E0-9A20-1029-ADDD-0003BAC9707D/eventdata_archive/20110303_408E7E50-C02E-4325-B7C5-2B9FE4853476/index' exists and is a directory, but cannot be listed: list() returned null; java.io.IOException;
Tue Mar 29 09:45:26 CEST 2011|SEVERE|Thread-94|esecurity.ccs.comp.event.indexedlog.IndexedLogSearchJob.run
    java.io.IOException: directory '/archive/696080E0-9A20-1029-ADDD-0003BAC9707D/eventdata_archive/20110303_408E7E50-C02E-4325-B7C5-2B9FE4853476/index' exists and is a directory, but cannot be listed: list() returned null
        at org.apache.lucene.store.FSDirectory.listAll(FSDirectory.java:516)
        at org.apache.lucene.store.FSDirectory.listAll(FSDirectory.java:531)
        at esecurity.ccs.comp.event.indexedlog.SquashFSDirectory.listAll(SquashFSDirectory.java:331)
        at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:585)
        at org.apache.lucene.index.DirectoryReader.open(DirectoryReader.java:68)
        at org.apache.lucene.index.IndexReader.open(IndexReader.java:476)
        at org.apache.lucene.index.IndexReader.open(IndexReader.java:403)
        at esecurity.ccs.comp.event.indexedlog.IndexedLogSearcher.open(IndexedLogSearcher.java:215)
        at esecurity.ccs.comp.event.indexedlog.IndexedLogSearcher.<init>(IndexedLogSearcher.java:177)
        at esecurity.ccs.comp.event.indexedlog.IndexedLogPartitionManager.getIndexedLogSearcher(IndexedLogPartitionManager.java:693)
        at esecurity.ccs.comp.event.indexedlog.IndexedLogSearchJob.run(IndexedLogSearchJob.java:493)
        at esecurity.base.ccs.comp.threadpool.TaskThreadPool$RunWrapper.run(TaskThreadPool.java:89)
        at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:732)
        at java.lang.Thread.run(Thread.java:619)


On the original system the same partition seems to be read correctly. Also, trying mounting the squashed File System manually works just fine.

Resolution

This most likely happens because the user ID of the novell user is different between the source and the destination system, where the source is the system where the partition has been created, and the destination is the system where the partition has been restored.

To resolution is to set both the user ID (UID) and the group ID (GID) of the novell user on the destination system to be the same of the source system. This can be accomplished either using YaST or via command line.

More details can be found in the documentation "SLES 11 Deployment Guide", section 12.2 "Managing User Accounts" at the following link:

https://www.novell.com/documentation/sles11/book_sle_deployment/?page=/documentation/sles11/book_sle_deployment/data/sec_y2_userman_users.html

Status

Reported to Engineering