IBM Support

Step-By-Step Troubleshooting Guide for Unread Marks

Recommended Resources


Abstract

This troubleshooting guide covers many topics related to Notes/Domino unread marks including key terms and concepts, troubleshooting tools, known issues, "must gather" information, and techniques for resolving issues.

Content


** NOTE: The content in this troubleshooting guide originated from a presentation given by Amy Knox during an Open Mic session on June 4, 2014. To download a .pdf copy of the original presentation and/or the .mp3 recording of the session, see technote 7042034 @ http://www.ibm.com/support/docview.wss?uid=swg27042034 **



Section Index


Key Terms & Concepts
Unread ID Table The ID table, stored in the nsf, stores a list of unread documents for each user
  • All unread = all docs in the table; Read a doc = remove a doc from the table
  • One table per username, per database. Each replica maintains its own Unread Table
  • Stored by NoteID; thus, unique to each database
Unread Journal Stored in the local Notes client, tracks and stores up to 20,000 consecutive operations by unid, for the purpose of synchronizing unread marks across multiple replicas of the same database
  • Tracks UNIDs of docs marked read/unread while accessing a database.
  • Does not track external API operations
  • Not available outside the Notes client
Unread Activity Log Per-user, per-database log, Stored in the nsf, contains time stamped information used to determine the latest unread status for a document.
  • When a user marks a note read or unread, a new entry is added to the end of the activity log
  • Data organized and then Replicated in chunks, only the new entries since last replication
  • Client-initiated replication only processes that user's activity logs
  • Configured in Advanced database property → Unread Mark Options → “Replicate Unread Marks”
Unread Log Playback Occurs when a user opens a database or clicks F9; Syncs the Unread Activity log with the Unread ID Table
Modified Note ID Table Tracks a list of modified documents in a database; Relevant to unread marks with respect to the database option in Design tab → “Do not mark modified documents as read”
Single Client – Multiple Replica
  • User reads documents in replica on Server A
  • Unread Journal tracks operations on the Notes client (cache.ndk)
  • User opens replica of the database on Server B
  • Journal operations applied to the Unread table of replica B
Recent SPRs - The State of Unread Marks
RMAS8HN2KV Symptoms: In the middle of a view, a whole block of docs turns unread OR all docs could change back to unread unexpectedly; could happen in one database or multiple, or intermittently to different databases.

Found in: 8.5.2 Fix Pack 2

Fixed in: 8.5.2 Fix Pack 4 and above; 9.x

Solution: Upgrade to 8.5.2 Fix Pack 4 or above

Workaround:
1) Go to "ALL Documents" view: View → Show –> Unread Only
2) Ctrl+A to select all unread documents
3) Edit → Unread Marks → "Mark Selected Read"

*After this, all selected documents are marked read in all folders and subfolders
*The issue does not seem to resurface in the same database after it is repaired
DANG7UCHMJ Background: REPL_SYNC_ALL_UNREAD=1 not working as expected; In
larger Notes & Domino deployments, sometimes unread mark counts were
losing synchronization across multiple replicas. The parameter did not resolve
discrepancies as expected

Symptom: all documents marked unread

Found in: 8.x

Fixed in: 8.5.3 Fix Pack 1, 9.x

Solution: Upgrade to 8.5.3 Fix Pack 1 or above

Workaround: No known workaround while using the notes.ini parameter. Use other methods to sync unread marks across replicas
JPAI8ELRFN Internal SPR related to new Managed Mail Replica feature and huge activity logs

Steps to reproduce: Large database with large unread log; Create “Managed Mail Replica” (MMR) for user; mark all read/unread several times in large database

Symptom: Replication issues; replication performance degradation

Found in: 8.5.2.x

Fixed in: 8.5.3

More info: Provides a new internal mechanism to purge the database unread log of extremely large databases. The intent was to allow hugely bloated unread logs to be made a more manageable size by forcing a purge
RMAS96PR2M Fixed an edge case for DbGetModifiedNoteTable that resulted in too many documents being returned

Symptom: Random cases where small chunks of docs (10-200) would be appear unread again

Found in: 8.5.x

Fixed in: 8.5.3 Fix Pack 5, 9.0.1

Solution: Upgrade to Domino server 8.5.3 Fix Pack 5, 9.0.1 or above

Workaround: Manually fix the documents in question
Troubleshooting Tools
1
sh stat database.nsf.replicate.unreadmarks.*
2
new replica, other replicas, OR restored databases
3
(single database) DEBUG_UNREAD_DB=<full database path>
4
(for multiple databases) DEBUG_UNREAD=
    • (Bit) Options include:
      1 = Unused
      2 = Dump log on view refresh
      4 = Log replication
      8 = Log playback
      16 = Unread log mgmt
      32 = Extreme logging
      64 = Log admin activity
      128 = Purge logging
      256 = OpBlock logging
      512 = Debug for messages marked read/unread
    • To debug multiple options, add the bit values together: For example: Debug_Unread=31
    • Unused (1) + View Refresh Dump (2) + Repl (4) + Playback (8) + Unread Log mgmt (16)
5
Notes client:
  • “Exchange Unread Marks” tool
  • DEBUG_LIMIT_UNREAD_JOURNAL=1
6
REPL_SYNC_ALL_UNREAD=1 (client or server)
7
ADMINP_EXCHANGE_ALL_UNREAD_MARKS=1 (“source” server)
8
iNotes/Notes Traveler: Tell commands for Domino HTTP and Notes Traveler servers
9
IBM Internal tools: dumpNSF and dumpUnread tools

Common Issues

1. All docs Marked as Read/Unread suddenly (today) for no apparent reason and without user interaction

2. Blocks or chunks of docs marked unread/read, without user interaction

3. Recently received docs are marked as read without user interaction

4. Unread Marks not synchronized between multiple replicas of a database

5. Unread Marks not synchronized between a Notes mail file and mobile device

6. Unread Folder count is different between replicas or “off” for a single database

7. Unread ID table or Unread Log corruption

8. Extremely large database has trouble keeping up with Unread Marks Activity
Collecting Data (MustGather) Information for All Cases

1. What is the exact version of the Domino server?
    - Eliminate the obvious SPRs and known issues

2. Type of client used: Notes client? iNotes? Mobile device? All three?
    - From multiple clients, does a different one exhibit expected behavior?

3. When did the issue first start?

4. How widespread is the issue: some docs or all? One user vs multiple?

5. Are multiple database replicas involved?
    a.) Get specifics on which replica(s) has the issue, unread state of each;
    b.) Get connection doc settings, is this a clustered environment? PIRC-enabled?

6. Any notes.ini parameters set in the client/server related to unread marks?

7. Is the behavior reproducible at will? In a brand new database? In a new replica?

8. Was the user recently renamed? LDAP authentication in use?

9. If you switch ID/log in as the user, from a different client, do you see same issue?

10. What is the goal: Quick fix now or determine root cause?

Troubleshooting Steps for All Situations
For all Notes/Domino Unread Marks issues, execute the following steps:

1) Upgrade Domino server to 8.5.3 Fix Pack 5 or 9.0.1; all major unread issues resolved
    - Eliminate the known issues that have been identified and fixed

2) Check/Set these Application properties in the database(s):
    a.) Advanced tab: “Replicate Unread Marks” option – 'Never' or 'All servers' checked
    b.) Design tab: "Do not mark modified documents as unread" should be checked, if you want the read documents to stay read, after they are modified

3) Check time/date on clients and Domino servers, for accuracy/similarity

4) Compare Username value of the Person doc against the authenticated user (user.id, Traveler, LDAP, or HTTP authenticated name) to ensure a match
    - If they are different, there will be two different UnreadID tables – one for each username

5) (If multiple replicas): Verify Replication options and Disable the Unread Journal:
    a.) Basics tab: "Send documents to server" and "Receive documents from server" checked
    b.) Other tab: make sure the 'Temporarily disable replication' option not checked
    c.) Check database replication history to see if database has been replicating regularly/as scheduled
    d.) Disable the (client) unread Journal; use only of database unread activity log: DEBUG_LIMIT_UNREAD_JOURNAL=1
8 Techniques for Resolving Unread Marks issues
    • 1 - Toggle all docs Read/Unread Status
    • 2 - Notes client “Exchange Unread Marks” tool
    • 3 - REPL_SYNC_ALL_UNREAD=1
    • 4 - Replicate Manually First
    • 5 - Other Notes Client Solutions
    • 6 - Fixing iNotes Unread Issues
    • 7 - Fixing Issues with Mobile Devices
    • 8 - New Replica


Technique #1 - Toggle all docs Read/Unread Status
Single Database, Single User
When to Use: single database; when a new replica not convenient; quick one-time fix

What this does: Removes all docs from unread ID table first, puts them back


Steps:

1. Create two folders, Group1 (read) and Group2 (unread)

2. Go to the All Documents view

3. From the menu, select: Edit → Select All

4. If using a mail based design, click the Action Bar -> Folder -> Move to Folder -> select Group1 → Add

*For other databases, drag the document collection to the Group1 folder in the left pane

5. Switch into the Group1 folder

6. From the menu, select View → Show → Unread Only
*Only the unread documents should appear

7. From the menu, select Edit → Select All

8. If using a mail-based design, click the Action Bar: Folder → Move to Folder, select Group2 → Move
*For other databases, drag the document collection to the Group2 folder in the left pane.

9. From the menu, select View → Show → Unread Only

10. From the menu, select Edit → Select All

11. From the menu, select Edit → Unread Marks → Selected Unread

12. From the menu, select Edit → Select All

13. From the menu, select Edit → Unread Marks → Selected Read

14. From the menu, select Actions → Folder Options → Remove folder

15. Switch to the Group2 folder

16. From the menu, select Edit → Select All

17. From the menu, select Edit → Unread Marks → Selected Read

18. From the menu, select Edit → Select All

19. From the menu, select Edit → Unread Marks → Selected Unread

20. From the menu, select Actions → Folder Options → Remove folder

VARIATION: Toggle all currently unread/read to read/unread
When to Use: When a chunk of docs have incorrect status, single database. Steps:

Variation 1: Toggle all currently unread docs to “Read” status
1. Go to the All Docs view
2. View → Show → Unread Only
3. Edit → Select all, to highlight all docs
4. Edit → Unread Marks → Mark All Read

Variation 2: Toggle all currently Read docs to Unread
1. Go to the All Docs view
2. View → Show → Read Only
3. Edit → Select all, to highlight all docs
4. Edit → Unread Marks → Mark All Unread

Technique #2: Notes client “Exchange Unread Marks” tool

Single User, Multiple Replicas
When to Use: One-time sync of unread marks between two replicas, and one replica has correct unread list; the user's Notes client is available

Steps: (Executed from the Notes client, user's machine in question)

1. From the Notes client workspace, unstack the replica icons

2. Select the “Source” (“good”) replica icon so it becomes highlighted

3. Hold the Shift key and select the “Target” replica. Both icons should be highlighted now

4. Edit → Unread Marks → Exchange Unread Marks

*It is advisable to create a backup of the “good” replica first

*“Source” database = correct unread list. “Target” database = the one being fixed “fixing”. The order of selection is crucial.

*Can be done with client and/or server replicas.

*This only exchanges the unread marks for the user.id in question; thus, must be done from the user's workstation in question. Admin may do this for the user if the admin has the user's user.id file.

*Similarly, a smarticon may be created with the formula
@Command([ExchangeUnreadMarks]), but you will still need to select the two icons

Technique #3: REPL_SYNC_ALL_UNREAD=1
Single/Multiple Users, Multiple Replicas
When to use: Apply to Notes client or Domino server (8.5.3 Fix Pack 1 or above), for one-time sync of unread ID tables for one or multiple databases


Applied to: “Source” server or client = the one with the accurate unread marks OR the server whose replication code should initiate the synching of unread marks
Notes: resource intensive operation; triggers a full replication of all unread tables (not just latest updates); should be used sparingly; should never be constantly enabled on the Domino server

Steps:
1. Enable the parameter dynamically: (Set config REPL_SYNC_ALL_UNREAD=1)

2. Restart all Domino replicator tasks (restart task replica)

3. Force replication of the database between source and target servers (or client-server)

4. Wait for replication to complete

5. Disable the parameter dynamically: (Set config REPL_SYNC_ALL_UNREAD=0)

6. Restart replicator task

*Another option: Create different program documents to toggle this option on/off occasionally


Technique #4: Replicate Manually First
Single User, Multiple Replicas
When to use: Multiple replicas; when one replica has correct unread marks Steps:
1. In the source server, check/set Application properties → Advanced → Replicate unread marks → 'all servers'

2. Check the replication history of both replicas for inconsistencies or issues

3. Clear replication history of both replicas, then re-replicate. Push from “source” (good) database to “target” (incorrect) database, and monitor

4. If not resolved, add 'set config REPL_SYNC_ALL_UNREAD=1' to the “source” server, restart all replicator tasks, and initiate a push of the database again. Monitor both replicas. Issue resolved?

5. If not, create a new replica:
    a.) manually
    b.) via AdminP with notes.ini parameter 'ADMINP_EXCHANGE_ALL_UNREAD_MARKS=1'

6. set config REPL_SYNC_ALL_UNREAD=0; restart replicator task
*NOTE: REPL_SYNC_ALL_UNREAD=1 is valid on server or client; always disable after use


Technique #5: Other Notes Client Solutions
Single User, Single/Multiple Replicas
When to use: Notes client; unread folder count is off or different between replicas Steps (may use one, multiple, or all):
1. Purge Deletion Stubs, close and reopen the database

2. Empty the Trash Folder (mail databases) and force replication

3. Run Full maintenance (fixup -f, compact -c, updall -R)

4. On the workspace: Unstack icons, Remove “bad” icons from the workspace, then Compact the workspace. Reopen database replicas to re-add icons again.

5. Delete cache.ndk file and restart Notes client; Remove desktop.ndk file from data, re-test

6. Create a new Replica of the “incorrect” database, from the “correct” database

7. Disable Unread Journal (client), restart Notes client, and collect client console.log:
    DEBUG_LIMIT_UNREAD_JOURNAL=1 *this disables the journal for logged databases
    console_log_enabled=1
8. Enable REPLICATOR_SYNC_UNREAD=h on the client (*h = number of hours)
NOTE: client param, syncs unread IDTable, can negatively impact client replication

9. Open a new PMR and have IBM Support run the DumpUnread tool on the database


Technique #6: Fixing iNotes Unread Issues
Single/Multiple Users or Replicas
When to Use: iNotes-only issues

Notes:
  • iNotes uses Unread ID table, no journal
  • Unread Activity log for multiple replicas
Steps:
1. tell http show users

2. Review the user's person doc, username field

3. Open the user's mail file in the Admin client or via browser. Make sure that the authenticated user name in step 1 matches the username and owner
- If names are different, then the user has different unread lists for each authenticated name

4. Is the user currently working off a secondary server replica (vs. primary)?
    a.) Have the user open the primary database via the browser. Are unread marks the same?
    - If not, then we may be facing issue with replication of unread marks.
    b.) Use Technique 1, 2, 3, 4, or 8 to resolve discrepancies between two replicas
5. (8.x and 8.5.x) test in lite mode, if available. Is the issue present in other modes?

6. If issue is not resolved, open a PMR with IBM Support to run DumpUnread tool against affected database







Technique #7: Fixing Issues with Mobile Devices
Single/Multiple Users or Replicas
When To use: When a mobile device is in use

Notes:
  • The majority of reported issues are caused by variations in authenticated usernames, or multiple usernames in the person document
  • Traveler: Unread replication is enabled for each user automatically by the IBM Notes Traveler server so that unread marks sync correctly with the device Uses the Domino APIs for determining Unread status.
  • BES/RIM uses its own internal mechanism for maintaining unread marks. In the past, it pulled info from the Domino UnreadID Table and used it. NoteIDs only relevant in the current database, so this was not good for clustered environments. In recent releases, RIM has switched to using the UNID, since the UNID is uniform across all replicas
  • There are currently some limitations with Apple devices:

      a.) When a mail message has synched with the Apple device, it cannot be modified again. Any modifications on the server except for read/unread status changes do not sync with the mail on the device

      b.) Read/unread changes periodically do not sync from device to server with iOS versions prior to iOS5. If the change cannot be synched immediately, the device often "forgets" about the change and not sync it later
Steps:
1. Upgrade to the latest Fix Pack or Interim fix available for Traveler. For info on the latest releases, see technote 4019529 - Index of recommended maintenance for IBM Notes Traveler.
    • 853 UP2: Unread marks sometimes not synched to from Android to Server (LOLO71503)
    • 901 IF1: 'Traveler Access Rights' error if unread mark synching not enabled in mail file (LO77846)
    • 901 IF3 / 9001 IF4: Read Status for Calendar invitation not synched from Mobile device to Notes Client (LO77998)

2. Check database properties - replication of unread marks. Enabling syncing of read or unread changes

3. Is the user using an Apple device? If so, there are known limitations and restrictions:

4. Enhancement Request RSSN-8B7JTP: For Instant unread sync between client and device (technote 1666362)

*By default, Traveler does not push unread-only updates to the device


Technique #8: New Replica
Single/Multiple Users, Multiple Replicas
When to use: When it is convenient to create a new replica; newly created replica does not have correct unread marks Steps: Create a new replica for affected databases:

1. In the source server, set:
    - all databases' properties - advanced tab (via admin client) to replicate unread marks, 'all servers'
    - Set config ADMINP_EXCHANGE_ALL_UNREAD_MARKS=1

2. Delete the "bad" replica on the destination server(s)

3. Re-create the replica via AdminP. Does this resolve the issue?

4. If not, add 'set config REPL_SYNC_ALL_UNREAD=1' to the source server console, restart replicator task, then initiate a push for the one database, from source to target server

5. set config REPL_SYNC_ALL_UNREAD=0

Related information

The enhanced unread functionality in Notes/Domino

Cross reference information
Segment Product Component Platform Version Edition
Messaging Applications IBM iNotes
Messaging Applications IBM Notes

Document information

More support for: IBM Domino
Database

Software version: 8.0, 8.5, 9.0

Operating system(s): AIX, IBM i, Linux, Solaris, Windows, z/OS

Software edition: All Editions

Reference #: 1676207

Modified date: 04 March 2015


Translate this page: