All Stories

Database Corruption and Troubleshooting


Database corruption is when some or all parts of the database objects are unreadable or the integrity is questionable. It may occurs due to internal issues ( software problems in the Notes Client code ) or external issues which effect expected Notes operations.

The corruption could be a result of:

  • Improper operation procedures ( such as improper shutdown )
  • Third party software applications
  • Operating system or network problems
  • Hardware failures

“Future Date” Issue

If the user is complaining that is able to see incoming emails in All Documents, All by Date and All by Person views, but not in the Inbox folder, the mailbox has to be checked for  “future date” problem.

“Future Date” issue is caused by setting the operating system clock to a time in the future. The date selected remains in Notes, even though it is reset by the operating system.

Windows applies a selected date immediately and then reverts, if the Cancel button is clicked.
Lotus Notes does not accept backward time changes at the operating system level while the client is running. ( restart is needed to synchronize Lotus Notes with the operating system settings ).
Any documents created or modified in that state are stamped with future date, which is preventing the incoming mails to be visible under Inbox folder.


Create new view and named it FutureDate:Future Date Lotus Notes Issue

  1. Open user’s mailbox database from his/her home mail server
  2. From the main menu select Create –> View…
    View name: FutureDate
    Selection Conditions: By Formula
  3. Paste the future date formula:
    SELECT (@Modified > @Today) | (@Created > @Today)
  4. Click OK





LN Client must be restarted after the correction. Then open the mail file from the user’s home mail server and go to the FutureDate view, select all the documents in this view / Ctrl-A /. Ctrl+X, then Ctrl+V. The documents will be cut and pasted back with the current date as modified. After this action no document should be visible in that view.

       Corrupted Local Replica

  Before recreating local replica from the server ( in some cases the mailbox database is too large and it will take long time to be recreated from the server ) there are few steps that you have to do first:

  If you think that the local replica is corrupted ( in case that everything is working as expected on server replica and you are sure  that the problem persists only on local replica ):

  1. Go to command prompt and navigate to Lotus Notes installation folder ( generally C:\Program Files\notes )
  2. Use these tree executables in order to fix the corrupted database:

  nfixup.exe, ncompact.exe, nupdall.exe

Syntax Examples:Fixup Compact Updall

  •   nfixup -J -F [database name]

  [J] Fixup transaction-logged databases

  [F] Scan all documents

  •  ncompact -c -i [database name]

  [c] Copy-style

  [i] Ignore errors and proceed

  • nupdall -R [database name]

  [R] Rebuild all used views

Note: Nfixup without any options will perform fixup to all Notes databases in the folder where it was executed.



       Corrupted Local Replica

Error: “Database is corrupt Cannot allocate space” is received when opening local replica.


  1. Remove the database from the workspace.
  2. Compact the workspace. ( right click on free space in Workspace, select Properties and click the Second Tab. Click on Compact ).
  3. Recreate local replica.

Error: “The database is being taken offline and cannot be opened”

  • While opening the mailbox database:

       The error message is usually caused by a Lotus Domino task running on a database during the time you try to open it. Some Domino tasks ( e.g. fixup -o , compact -c ) do NOT allow access to a database while they are running. The duration where the database is unavailable should not be significant.

  •  When launching the Lotus Notes client:

  On the second attempt, however, Notes will launch successfully. The issue continues, resulting in the customer having a successful launch with every other attempt.



      After closing the Notes Client and deleting the local cache.ndk, the customer was able to repeatedly launch Notes without a problem.


UNREAD MARKS: Inconsistency Between Local And Server Replica

The list of unread documents for any database for a specific user is stored locally by Lotus Notes in the mailbox database itself, the user's desktop file DESKTOP.NDK and in CACHE.NDK.
Users may get confused when they mark a message read in one replica and then immediately open the other replica finding out that the unread information has not been replicated over.
In that case using the option “Exchange Unread Marks” or adding extra line to notes.ini could be helpful.

There is a Lotus Notes client option which manually synchronize the unread marks between two replicas ( e.g. local & server ):

Exchanging Unread Marks Lotus NotesDelete cache.ndk file then open Lotus Notes client and turn off the "stacked replica" option in the View menu when the Workspace is active.
Then select both users replicas ( local and server ) by pressing the SHIFT key and clicking on each of them.
With the both replicas selected, you have an additional entry "Exchange Unread Marks" in the Edit -> Unread Marks submenu.






As alternative, adding "REPLICATOR_SYNC_UNREAD=-1" setting in the Notes.ini file will force unread synchronization during each replication, and minimize any possible occurrence of this problem.

Mailfile Issues and Design Replacement


Often the corruption of local archive database is caused by incompatibility between the newer version of Lotus Notes client against older archive template version. ( e.g. the user is trying to open local archive database, which have R5 template with lotus notes client version 7 or greater ).

If you experience design problem on local archive database such as:

Lotus Notes Design Error Message

“Type mismatch on external name: UIMEMODOCUMENT”





After clicking OK you receive the following error message:

Variant Does Not Contain an Object

"Variant does not contain an object"






It is usually caused by incompatibility between LN client and archive template versions.
When trying to refresh / replace design from template located on local or server it will come with an error message "Design refresh failed, You are not authorized to perform that operation."

Steps how to replace the design of archive or local replica

You can create a template from the server replica of the mail file:Creating Lotus Notes Template

  1. Right click on server copy of the mailbox –> Database –> New Copy –> Use only : Database Design Only option, untick Access Control List, give some name with NTF extension ( e.g. NP_template.NTF ). Press OK.
  2. Right click on the newly created file –> Database –> Access Control List : Remove all entries except user name that should be there with full rights ( User type: Person, Access: Manager ).
  3. On the problematic local archive / replica, right click –> Database –> Replace Design. Use as template the newly created file and press OK.



PERWEB.NSF  Common Issues

The Personal Web Navigator ( perweb.nsf ) database contains Web browser information and stores previously viewed pages. If you are facing problem similar like in the picture below, most probably perweb.nsf is corrupted:

Perweb.nsf Image not shown
The user is unable to see embedded images in the mails received in HTML format. Instead of this, every graphic in this email have a red X in it's place.

Another known issue is when the user is trying to open certain HTML emails LN gives a “Cannot Open the Web Navigator database” error message:

Lotus Notes Perweb.nsf Issue

What has to be done ?

Check the Location document –> Internet Browser tab:

  • Internet Browser: Notes with Internet Explorer
  • Retrieve/open pages: from Notes workstation

Advanced tab –> Basics:

  • Ensure that Load images settings is set to "Always“

If the customer uses some proxy server and a port in the Internet browser ( in the IE Tools > Internet options > Connections > LAN Settings ), please put the same to LN Location settings –> Basic tab –> Proxy configuration.

If this is ok, check Advanced/Web Retriever tab:

Web Navigator database: perweb.nsf

If this is also ok, perweb.nsf database seems to be corrupted.

Recreating perweb.nsf:

  1. Shut down LN client
  2. Make sure that PerWeb50.NTF ( perweb template file ) exists in the Data folder ( If the file does not exist copy it over from another workstation )
  3. Rename the perweb.nsf to perweb.old
  4. Run LN client
  5. Edit current location document: change the Internet Browser preferences to "Notes" and try to open some web page in the LN Web Browser. This action will create new database "Perweb.nsf"
  6. In the LN web browser: go to Actions/Internet options –> Presentation page and set from MIME only to Rich Text & HTML
  7. Edit current location document: change the Internet Browser preferences to "Notes with Internet Explorer" and try to open the problematic mail again


Lotus Notes Cache and BookmarksWhat is Lotus Notes CACHE.NDK and what does it do ?

Cache.NDK is a file where you save views and forms of databases, in order to open them quickly next time you enter.
Cache.NDK increases the performance of the Lotus Notes client, but if goes too big it could have negative effect . It is recommend to delete it if becomes bigger then 30 MB.

What is stored in CACHE.NDK file ?

CACHE.NDK stores locally design elements such as forms, subforms, navigators, scripts, etc., cached from a server copy of a replica.

CACHE.NDK is created automatically during Notes start ( if the file does not exist already ). Therefore, if this file is deleted, it will be recreated the next time the Notes client is started.
By default CACHE.NDK is located in the Notes data directory.

Lotus Notes BookmarksWhat is Bookmarks.nsf ?

Bookmarks allow users to create links to information or the places that are important for them.
Often the corruption of Cache.NDK and bookmarks.nsf ( crucial files ensuring  Lotus Notes functionality ) could lead to malfunction of the client.

What is the purpose of Bookmarks.nsf ?

Bookmark.nsf is the file that keeps track of Lotus Notes user's databases that are bookmarked on the sidebar as shown in the picture.


What actually is stored in the Bookmark.nsf file ?

  • Bookmarks
  • History bookmarks
  • Database icon images
  • User customized views
  • Lists of servers for particular replicas
  • Welcome page design infrastructure

Common issues related to bookmark.nsf & cache.ndk


  • attachments are displayed as images
  • mailbox opens on view "All by person" or personal folder
  • cannot see replication icon
  • welcome page cannot be loaded
  • cannot create dialog box ( "Insufficient Memory" error message )
  • cannot login after upgrade ( error message about bookmarks.nsf )
  • some symptomatic error messages:

 “File already exists"

  "Object variable not set"
   "The linked document cannot be found in the view"
   "duplicate public name cseventobj in use in module CSEventnotes"
  "No Frame of Specified Name Exists"
  "duplicate public name CMEMOOBJECT in USE module Core EmailClasses"
  "Not a Sub or Function name: DISPLAYGROUPCALENDARLG"


Bookmark.nsf has to be recreated:

  1. Remove bookmark.nsf DB icon from workspace ( right click and remove from workspace )
  2. Shutdown Lotus Notes client
  3. Selete cache.ndk ( by default is located in the notes installation data folder )
  4. Backup bookmarks.nsf ( move bookmarks.nsf to a local backup folder – make sure that the file does not exist anymore in LN data folder )
  5. Start Lotus Notes client ( while starting, LN will create new bookmarks.nsf file )
© 2016 IBM Lotus Tech Blog. All rights reserved. Site Admin · Entries RSS · Comments RSS
Powered by WordPress · Designed by Theme Junkie