Autor Thema: DB löschen per AdminP.DeleteReplicas geht nicht, per Admin-Client aber schon?  (Gelesen 5296 mal)

Offline Sascha Seipp

  • Aktives Mitglied
  • ***
  • Beiträge: 139
  • Geschlecht: Männlich
Moin allerseits!

Hab da mal eine Sache, die mich schon etwas länger fuchst. Hab mich dessen jetzt mal wieder angenommen, aber so ganz verstehen tu ich es noch nicht:
Wir löschen ausscheidende User nicht direkt, sondern legen die Personendokumente "beiseite". Die Mail-DB wird aber je nachdem schon gelöscht (eigentlich), und zwar per LotusScript: adminp.DeleteReplicas(..). Hierdurch wird auch ein AdminP-Request vom Typ "Get Replica Information for Deletion" angelegt, der liefert dann aber einen Fehler:
Title: Administration Requests (R4) Path: admin4.nsf; Name: ProxyReplicaId; Error: Note item not found
Das Note item 'ProxyReplicaId' ist aber sehr wohl in dem Request vorhanden. Ich habe keinen Manager-Zugriff auf die Datenbank, bin aber Admin des Server. Wenn ich das Löschen der Datenbank über den Admin-Client (und den AdminP) veranlasse, wird derselbe Request erzeugt, aber dann klappt's - ohne Fehlermeldung.

Nun dachte ich zunächst, es könnte evtl. daran liegen, daß der DB-Name (manchmal) ohne '.nsf' übergeben wird. Klemmt aber genauso bei Übergabe mit 'dbname.nsf'.

Ich hab auch schon das hier: http://forum.dominoarea.org/ls-supprimer-mail-db-du-cluster-t21179.html mangels guter Französisch-Kenntnisse durch den Google-Translator gejagt. Das beschreibt auch mein Problem, aber keine sinnvolle Lösung.

Ein anderer Ansatz dazu ist wohl schon etwas älter:
http://www-10.lotus.com/ldd/nd6forum.nsf/DateAllThreadedweb/c6b6b917ffe8f26f8525767b004d8219?OpenDocument

Sollte das immer noch so gelten? Unsere Server sind 8.5.1FP5, mein Client ist 8.5.2FP3.

Falls ja: Kann mir das jemand erklären?

Habe gerade nochmal die Felder der beiden Request-Dokumente verglichen: Beim funktionierenden Request steht im Feld 'ProxyDatabasePath' "mail\dbname.nsf" drin, beim nicht funktionierenden Request ist dieses Feld leer. Stellt sich nur noch die Frage: Warum?

Und weiter gegoogelt finde ich: http://www-10.lotus.com/ldd/nd6forum.nsf/ReleaseAllThreadedweb/2e1c55f5c14ffeed85257171005d208f?OpenDocument
Ist zwar ein Bug aus Version 6, läßt mich aber vermuten, daß der Eintrag in dem Feld so entscheidend dann doch auch nicht sein kann (oder im Gegenteil sogar problematisch sein könnte).

So, jetzt hör ich aber mal mit weiter suchen auf und bin gespannt, ob mich hier jemand erleuchten kann..  :)

Ciao
Sascha
« Letzte Änderung: 20.05.12 - 18:23:07 von BibbernderBiber »

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Was meint der IBM Support dazu?

P.S.: Was meinst Du mit
Zitat
legen die Personendokumente "beiseite"
? Ausdrucken und ablegen? ;)
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline Sascha Seipp

  • Aktives Mitglied
  • ***
  • Beiträge: 139
  • Geschlecht: Männlich
Hi!

Den von mir mit diversem genervten IBM-Support hab ich diesbezüglich noch nicht befragt. Ist aber sicherlich auch ein Ansatz, der dann als nächstes dran wäre.

Die Personendokumente schreiben wir in andere "DeletedPerson"-Dokumente im Adressbuch, wo im Prinzip die organisatorisch relevanten Felder nochmal gelistet sind, es sind dann aber eben keine "echten" Personendokumente mehr.

Hintergrund: Das Löschen von Usern führte zum Löschen von Namen in Mails (was wohl mittlerweile mit entsprechendem Setzen des "was soll mit Namensfeldern passieren" in der ACL gelöst werden können sollte). Rausverschieben in ein zweites, nicht aktives "Aufhebe-"Adressbuch ist aber auch nix, weil dann ja u.U. der Name in einer ACL bestehen bleibt und ein neuer Mitarbeiter gleichen Namens sofort diese Rechte hätte, ohne daß das direkt auffällt.
Das Thema steht auch noch auf der Agenda, um das mal etwas schöner zu lösen, bisher ergab sich aber noch keine Gelegenheit, das mal neu zu überlegen.

Ciao
Sascha

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Irgendwie fehlt es hier an der klaren Aussage: Löscht Ihr initial die Personen-Dokumente im Domino Directory, ohne die User via AdminP zu löschen oder was treibt Ihr da?

Bernhard

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Hi!

Den von mir mit diversem genervten IBM-Support ...
Der hat nicht genervt zu sein, ihr zahlt dafür ;)
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline Sascha Seipp

  • Aktives Mitglied
  • ***
  • Beiträge: 139
  • Geschlecht: Männlich
Hallo,

@Bernhard: Jo, das trifft's schon ganz gut - ich wollte das hier aber nicht näher ausführen, weil das ja nicht das zentrale Problem ist (ein anderes Thema halt). Zunächst geht das Löschen von Datenbanken per LotusScript nicht, und dabei ist ja unerheblich, ob das nu Mail- oder andere Datenbanken sind.
Daß wir uns die generelle Vorgehensweise beim Löschen von Usern nochmal anschauen müssen, steht wie gesagt außer Frage, muß aber noch eine Weile warten.

@Martin: War auch mehr so gemeint, daß ich den IBM-Support gerade auch mit diversen anderen Calls nerve - die sind schon ganz ungenervt sehr bemüht, da will ich mal gar nix sagen.. :-)

Ciao
Sascha

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Wenn Ihr wirklich die Personendokumente löscht und dann Fehlermeldungen vom AdminP bekommt, dann funktioniert der Domino, wie er soll - Du kannst dem Teil doch nicht die Infos wegziehen und dann noch erwarten, dass er funktioniert!

Korrigiere mich bitte, wenn ich Dich falsch verstanden haben sollte.

Bernhard

Offline Sascha Seipp

  • Aktives Mitglied
  • ***
  • Beiträge: 139
  • Geschlecht: Männlich
Hallo Bernhard,

zunächst sei angemerkt, daß ich den Code nicht geschrieben habe, sondern mehr in der Nachfolge versuche, noch bestehende Probleme gelöst zu bekommen. Die Vorgehensweise ist so: Ein neues Dokument mit der (selbst erstellten) Maske DeletedPerson wird angelegt. Dessen Felder werden größenteils aus den Feldern des Personendokumentes gespeist, außerdem stehen da dann auch alle Gruppen drin, in denen die Person Mitglied war. Anschließend wird das Personendokument gelöscht. Dann wird der Username der Person aus vorgenannten Gruppen herausgenommen, und schließlich (nach ein paar hier übersprungenen Statuswechseln zum Mailfile aufheben) wird das Mailfile gelöscht.

Nun will ich das als Problem ja nicht ausschließen, aber was hat das Löschen einer Datenbank, die in diesem Falle ein Mailfile ist, mit der Existenz des Personendokumentes zu tun? 'Get Replica Information for Deletion' sollte ja zunächst einfach nur die Repliken der genannten DB zusammenstellen, um dann ein 'Approve Database Deletion' abzufragen. (Hier wird also zwar der AdminP bemüht, aber nicht zum Löschen eines Users mit zugehöriger Datenbank, sondern *nur* für die Datenbank!)

Ich kann das Ganze gerne mal mit einer nicht-Personendokument-verknüpften 08/15-DB versuchen, aber ich gehe mal stark davon aus, daß das Verhalten da auch nicht anders ist.

Ciao
Sascha

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Sascha, nimm es mir bitte nicht übel, aber: Ihr fummelt da an DER Domino-DB (dem Domino Directory) herum und wundert Euch dann, dass der AdminP nicht mehr tut wie gewollt. Wisst Ihr da wirklich, was Ihr tut? Angesichts des Ergebnisses offensichtlich nicht.

Bernhard

Offline eknori

  • @Notes Preisträger
  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Zitat
Sollte das immer noch so gelten? Unsere Server sind 8.5.1FP5, mein Client ist 8.5.2FP3.
Zumindest konnte ich es so reproduzieren.

Und wenn ich mal Support spielen soll ( was ich aber gar nicht will ) , dann würde ich die über den AdminClient erzeugten Dokumente mal mit den über den Code erzeugten Dokumenten vergleichen. Und auch die mit gleicher / ungleicher Version erzeugten Dokumente haben mit Sicherheit einen kleinen, aber entscheidenden Unterschied. Und das kann duchaus auch der INHALT eines items sein.

Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Sascha Seipp

  • Aktives Mitglied
  • ***
  • Beiträge: 139
  • Geschlecht: Männlich
Hallo allerseits,

da ich ja auch kein Fan davon bin, über Foreneinträge zu stolpern, bei denen irgendwie "der Schluß fehlt", will ich das hier mal zum Abschluß bringen (auch wenn es schon 120 Tage alt ist - vielleicht fällt ja mal jemand bei einer Suche drüber..).

Das übergeordnete Problem des vernünftigen Verwaltens gelöschter User ist zwar noch nicht geklärt (steht immer noch auf der großen Agenda), aber ich weiß jetzt zumindest, warum mein DeleteReplicas nicht funktioniert. Der IBM-Support hat nur bedingt geholfen, aber zusammen mit einem IBM-FieldSupporter, der aus anderen Gründen bei uns im Hause war, hab ich das Ganze ergründet:
Die Fehlermeldung des AdminP ist kryptisch und nicht 100pro korrekt, aber im Grunde richtig: Das Item "ProxyReplicaID" fehlt zwar nicht, aber es ist leer. Und ohne Replik-ID der zu löschenden DB kann der AdminP nicht weitermachen. Ursache: Mein normaler User, mit dem ich das Löschen bisher angetriggert habe, hat keinerlei Zugriff auf die zu löschenden (Mail-)Datenbanken. Hätte ich auch nur Lese-Zugriff, würde das schon reichen, um die Replik-ID auslesen - das eigentliche Löschen passiert ja eh erst, wenn jemand, der das darf, sein Approval gibt.
Spannenderweise ist das kein Problem für den Admin-Client - der nimmt die Replik-ID scheinbar woanders her und hat somit kein Problem damit, mich als Server-Admin ohne spezielle Rechte auf die DB selbige löschen zu lassen.
Workaround: Ein dedizierter Admin-User, der Rechte auf alle Datenbanken hat und nur für derlei Verwaltungsarbeiten genutzt wird - damit funktioniert es wunderbar.

Der Vollständigkeit halber: Entgegen meiner ersten Vermutung hat es auch nix damit zu tun, daß die Client-Version höher ist als die des Servers, das hab ich in ner kleinen Testumgebung ausgeschlossen.

D.h. ich hab jetzt erstmal einen Ansatz, um nicht noch mehr Dateileichen zu erzeugen und die alten aufzuräumen. Leider hab ich recht viele Baustellen abzuarbeiten, daher ist wie gesagt ein besserer Umgang mit dem Löschen von Usern erst nochmal ein anderes Thema, wird aber auf alle Fälle noch angegangen - und gibt dann u.U. eine neue Frage im Forum.. :-)

Ciao
Sascha

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz