Autor Thema: Berechneter Text verlangsamt Maske extrem  (Gelesen 4951 mal)

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Berechneter Text verlangsamt Maske extrem
« am: 19.06.15 - 18:34:26 »
Wir haben hier ein Phänomen, das wir uns nicht erklären können:
Wir haben eine Maske, die an manchen Rechnern mehrere Sekunden braucht, um vom Lesemodus in den Bearbeitungsmodus zu wechseln.

Wir haben das Ganze runtergebrochen und rausgefunden:

Jeder berechnete Text in einer beliebigen Maske verlangsamt bei den betroffenen Rechnern die Zeit zwischen QueryModeChange und PostModeChange um ca. 15 - 20 ms.
Das hört sich erst mal wenig an, aber die Maske wird schon mit einer kleinen 6x6 Tabelle mit berechneten Texten in einer Spalte und ein paar Feldern in den anderen unbenutzbar langsam.

Dieser Effekt ist in jeder Maske in jeder Datenbank auf diesen Rechnern reproduzierbar. 3 von 6 Entwickler- Rechnern haben das Problem, bei den drei anderen ist es egal, wie viele berechnete Texte sie in einer Maske haben: Der Wechsel vom Lesemodus in den Bearbeitungs- Modus dauert immer gleich lang.

Script- Code ist in der stark eingedampften "Test"- Datenbank die wir zur Fehleranalyse verwenden keiner vorhanden.

Ach ja: Auf meinem PC HATTE ich das Problem, aber es ist von alleine weggegangen. Ein anderer Kollege hatte das Problem nicht, aber es fing plötzlich an, und jetzt kriegt er es nicht mehr weg (mitten am Tag, keine SoftwareUpdates, keine sonstigen Veränderungen).

Jetzt kommt der Hammer: Ein Kollege, der das Problem an seinem Rechner hat, hat eine Virtuelle Maschine installiert, dort Notes 9.0.1 installiert und seinen gesamten Notes- Ordner rüberkopiert. Auf der virtuellen Maschine hat er das Problem NICHT. Das heisst: Das Problem hat weder mit dem Data- Verzeichnis noch mit der notes.ini noch mit der Installation zu tun.

Folgendes haben wir schon (erfolglos) probiert:

- Per NRPC- Parser die Aufrufe mitprotokolliert - die "Auszeiten" tauchen in keinem Log auf, sind also für den Client "unsichtbar" bzw. nicht messbar
- Per Procmon geprüft, ob File- Zugriffe, Registry- Zugriffe oder sonstiges stattfindet -> Keine Unterschiede zwischen den Rechnern in den Protokollen
- Offline und Online gearbeitet
- Notes komplett neu installiert (ohne jegliche Übernahme auch nur einer Datei)
- Virenscanner deaktiviert

Hat jemand einen Ansatzpunkt, woran das liegen könnte?
Ich persönlich habe ja die Grafikkarte oder deren Treiber im Verdacht, aber wie lässt sich das sporadische "geht, geht nicht"- Verhalten z.B. an meinem Client dann erklären?
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: Berechneter Text verlangsamt Maske extrem
« Antwort #1 am: 19.06.15 - 22:39:14 »
Hi Torsten,

NRPC hast du ja schon gemacht, wär auch mein erster Ansatz gewesen.


Ich mach jetzt einfach mal etwas Brainstorming was mir einfällt:

- Was berechnest du in den Texten? Hat die Komplexität der Formel Einfluss auf die Geschwindigkeit?
(ich nehme mal an, dass du bei deinem 6x6 Test eine "einfache" Formel verwendet hast)

- Wurde die Maske evtl. in der Ansicht umbenannt? (Eher unwahrscheinlich, da du sagst es tritt in jeder Maske auf)
Wenn man dies macht, passt der Name des Global-$ScriptLib-Items nicht mehr zum Titel und es können komische Seiteneffekte auftreten, insbesondere dass Masken lange zum Laden brauchen oder beim Drucken "spinnen".
Dies sieht man auch im Objektbaum. Neben "Globals" steht ein anderer Name als darunter. Umbenennen und wieder zurück bei geöffneter Maske repariert das.

- Existiert mindestens eine Zeile LotusScript-Code in der Maske und beteiligten Teilmasken? Ist kein Code vorhanden, existiert auch kein $Scriptlib_O Item. Vermutlich wirft Notes dann den Compiler an, wenn kein ByteCode vorhanden ist, was Zeit kostet.

- Wo liegt die Cache.NDK? Netzlaufwerk? Bringt löschen etwas? (vermutlich auch nicht, da du Notes schon neu installiert hast)

- Mit ProcMon hat du auch die Zugriffe ausserhalb des Notes-Verzeichnisses kontrolliert? Eine falsch gesetzte $PATH Variable (auf nicht existierende Verzeichnisse/Netzlaufwerke) kann extrem bremsen.

- ClearType/Font Einstellungen prüfen.

- Sonstige Grafik"Aktivitäten" vorhanden. Läuft VNC, Teamviewer?

- Ist das Notes-"Eigenschaften"-Fenster geöffnet?

- Sonstige Windows-Einstellungen (Windows mal im Abgesicherten Modus starten  ;D )

- Wie ist die Auslastung im Taskmanager? Energiesparoptionen gesetzt? Mein Laptop wird übrigens sehr langsam, wenn ein zu schwaches Netzteil dran steckt.


Evtl. ist der ein oder andere Punkt dabei um das Problem einzugrenzen.

Gruß
Roland

Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Berechneter Text verlangsamt Maske extrem
« Antwort #2 am: 19.06.15 - 23:23:07 »
Noch ein Nachtrag von einem der betroffenen:
- Die Verlangsamung tritt nur auf, wenn man das Dokument im ReadMode öffnet und dann in den EditMode wechselt, jedoch nicht, wenn man das Dokument direkt aus einer Ansicht im EditMode öffnet
- Das Problem tritt nicht im Basic Client auf, nur im Standard Client.

Bernhard

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Berechneter Text verlangsamt Maske extrem
« Antwort #3 am: 20.06.15 - 00:07:40 »
Vielen Dank für Dein Brainstorming Roland.

Also: für die Tests haben wir eine neue Datenbank angelegt, dort eine neue Maske. In der Maske dann 5 Felder und 6 berechnete Texte mit den Hochkomplexen Formeln: "a", "b", "c", ...

Der einzige Scriptcode der gesamten Testanwendung besteht aus einer Zeile im QuerymodeChange: g_lngTicks = GetThreadInfo( 6 )
Und einer Zeile im PostModeChange: Call Source.Document.ReplaceItemValue("Ticks", GetThreadInfo( 6 ) - g_lngTicks )

Mit diesem simplen Konstrukt bekomme ich an meinem Rechner ca. 34 Ticks, bei denen mit dem Problem sind es zwischen 130 Ticks und 500 Ticks (je nachdem wie gut der Client grade drauf ist, und beliebig wiederholbar (also mehrfach Strg - B drücken bzw. Strg - E im englischen Client.

Das löschen der Cache und des Temp- Ordners haben bei mir die Zeit von ca. 50 Ticks auf 34 gedrückt, cache liegt ganz normal im Data.

Procmon habe ich nur in Bezug auf die Lokation der exe(n) eingeschränkt,  nicht in Bezug auf das Targetfile.

Das einzige was auffällt ist, das bei den betroffenen Pcs "Buffer overflows" bei ein paar Reg- Abfragen zurückkommen, aber ein Kollege hat das Gegoogelt, und es ist wohl "normal"...

clear Type ist ein guter Tipp, haben wir nicht geprüft. wegen vnc: das wollte ich als nächstes testen, weil ich kürzlich ein Problem mit dem Notes- Client und dem Nvidia NWiz hatte, das wegging, wenn man sich per Vnc aufgeschaltet hat.

Energiesparoptionen hatte ich schon im Verdacht, aber die Laptops sind eingedockt in Ihren Docking- Stationen mit den zugehörigen "fetten" Netzteilen.

Taskmanager zeigt keine "extremen" Ausreisser: die nlnotes "tut was", aber nicht so, dass es relevant scheint
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline DominoDancing

  • Aktives Mitglied
  • ***
  • Beiträge: 141
  • Geschlecht: Männlich
  • Kugel im Käfig, lsmf, hurz ...
Re: Berechneter Text verlangsamt Maske extrem
« Antwort #4 am: 22.06.15 - 09:06:10 »
Hallo Torsten,

die per 'netsh int tcp show global' aufrufbaren globalen TCP-Paramter sind an den funktionierenden und nicht-funktionierenden Arbeitsplätzen alle gleich eingerichtet? Ok, dies würde natürlich das sporadische Funktionieren/Nicht-Funktionieren nicht erklären, aber es ist der einzige Fall, bei dem ich auf zunächst 'unerklärliche' Performanceprobleme stieß.

Viele Grüße
René
... ich fühl' mich so ... Regenbogen ... ;D
... man muss die Ursache des Problems finden ... oder eine Tüte Glitzerfeenstaub ...
... Ich bin rhythm, I'm a dancer und I don't like Influenzer ...

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Berechneter Text verlangsamt Maske extrem
« Antwort #5 am: 22.06.15 - 09:21:58 »
Ja, die IP- Configuration hatten wir auch schon im Verdacht (obwohl es auch bei reinem Offline- Betrieb reproduzierbar ist)... Werde den Output mal gegenchecken.
Was wir schon geprüft hatten, waren die MTUs der verschiedenen Rechner: Sind alle identisch...
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Berechneter Text verlangsamt Maske extrem
« Antwort #6 am: 23.06.15 - 08:54:31 »
Also: IP config Werte sind vollkommen identisch...
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: Berechneter Text verlangsamt Maske extrem
« Antwort #7 am: 23.06.15 - 10:17:11 »
Also: IP config Werte sind vollkommen identisch...
Auch die IP-Adressen?  ;D

Viel bleibt ja nun nicht mehr über, aber ein paar Ideen hab ich noch:

Wie sporadisch tritt denn dein "geht/geht nicht" Verhalten auf?
- Ist es nach dem Neustart weg/da - oder wird der letzte Zustand "wiederhergestellt"
- Ist es erst da, sobald man eine bestimmte DB (z.B. die Mail-DB) geöffnet hat?
- Hängt es von der Notes-ID ab?
- Startest du den Designer ggf. vor dem Notes-Client?


- Sind die Geräte, die du vergleichst, identisch?
- Kannst du mal die Prozessliste beider Geräte abgleichen?
- Festplatte defekt?
- Hängt es von der Schriftart der Labels ab? Wenn ja, würde ich mal den Font-Ordner ansehen oder den Font-Cache leeren.
- Kannst du mal im QueryModeChange/PostModeChange auf ein File , z.B. c:\queryMode.txt zugreifen. Dann siehst du im ProcessMonitor was genau zwischen den Events passiert und kannst diese Events ggf. genauer vergleichen
- Der ProcessMonitor kann natürlich das Messergebnis auch negativ beeinflussen.
- genauso wie ein aktiver Virenscanner oder Bundestrojaner  ;D

Gruß
Roland

Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Glombi

  • Gast
Re: Berechneter Text verlangsamt Maske extrem
« Antwort #8 am: 24.06.15 - 10:37:45 »

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Berechneter Text verlangsamt Maske extrem
« Antwort #9 am: 24.06.15 - 11:51:32 »
Super Hinweis, danke. Den habe ich per Google nicht gefunden
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz