Unread Marks - 4
Novinky
11.06.2004 - Miroslav Uhlár
1. Viac používateľov na jednom počítači
UJ (cache.dsk) jedinečný pre klientský program Lotus Notes, nie pre používateľa. Ak teda pracuje na jednom počítači viac používateľov a databáza má viec replík, môže nastať rozsynchronizovanie UM. Ako?
Konkrétny scenár:
- Používateľ U1 sa prihlási do Lotus Notes
- U1 otvorí databázu A1 (na prvom serveri) a prečíta dokument D1
- U1 zatvorí klienta Lotus Notes
- Používateľ U2 sa prihlási do Lotus Notes
- U2 otvorí databázu A2 (replika na druhom serveri)
- V lokálnom UJ je zapísané, že bol prečítaný dokument D1 a preto je v UT na A2 (pre užívateľa U2) odstránený záznam pre D1. U2 vidí, že dokument D1 prečítal – aj keď tomu tak nie je.
- U2 otvorí databázu A1 (na prvom serveri). V tejto vidí, že dokument D1 neprečítal. Čo je pravda.
Dôsledok: Rozsynchronizovanie UT pre používateľa U1 i U2.
2. Používateľ na viacerých počítačoch
Táto situácia je typická pre mobilných používateľov, ktorí pracujú doma na notebooku s lokálnou replikou databázy (typicky to je pošta) a v práci na PC so server replikou.
Konkrétny scenár:
- Používateľ U sa prihlási doma na notebooku (NB) do Lotus Notes
- U otvorí lokálnu repliku databázy A1
- U prečíta dokument D1
- U zreplikuje aplikáciu A1 so server replikou A2 (Nezabudnite: UT sa pritom neprenesie!)
- Používateľ U sa prihlási v práci na PC (PC) do Lotus Notes
- U otvorí server repliku databázy A2. Keďže UJ v PC neobsahuje informáciu o čítaní D1, U2 vidí, že dokument D1 neprečítal – aj keď tomu tak nie je.
Dôsledok: Rozsynchronizovanie UT pre NB a PC prácu v databáze.
3. Príliš veľa prečítaných dokumentov
Tento problém súvisí s limitom UJ, ktorý má obmedzenie asi 20000* záznamov (pre všetky databázy spolu) a cyklicky sa prepisuje. Ak z nejakého dôvodu nedôjde k synchronizácii s UT inej repliky pred dosiahnutím tohto počtu, sú najstaršie záznamy jednoducho ignorované.
Konkrétny scenár:
- Používateľ U sa prihlási do Lotus Notes
- U otvorí databázu A1 a prečíta dokument D1 a potom (počas určitého obdobia) ďalších cca 20000 (v rozličných databázach).
- U otvorí databázu A2.
- V UJ už nie je zapísané, že dokument D1 bol čítaný - zápis bol totiž prepísaný. V UT na A2 nie je teda odstránený záznam pre D1. U2 vidí, že dokument D1 neprečítal – aj keď tomu tak nie je.
Dôsledok: Rozsynchronizovanie UT pre "staré" čítacie stavy.
*Tento limit je v článku Bill Spencera (The View) uvádzaný ako 3000. Po upozornení mi poslal informáciu, že sa pri písaní článku pomýlil a limit je naozaj asi 20000.
Čo s tým?
V tejto chvíli už vieme kedy a prečo nastávajú problémy. Ako ich však riešiť? O tom v nasledujúcej časti...