locked
Opportunistic Locking erkennen RRS feed

  • Frage

  • Hallo,

    ich hatte kürzlich jetzt bei einem Kunden 2 mal das Problem mit nem kaputten Index, und, wie sich herausstellte, hatte man den als Server laufenden Rechner grad ausgetauscht und es lief statt vorher WinXP jetzt Win7, was ziemlich stark auf das SMB2/OL-Problem hindeutet. Da ich nicht immer leicht die Gesamtkonfiguration eines Netzwerks unter Kontrolle oder auch nur Einsicht habe, würde ich am liebsten in meiner Applikation beim Start checken, ob OL greift und dann eine Warnung ausgeben. Klar: ich könnte auch am Client-Rechner, wenn >=Vista, immer per Registry OL abschalten, doch ein echter Check wäre mir lieber, um auch ggf. die Sache über den Server regeln (lassen) zu können.

    Hat jemand hier mal soeinen Check gemacht oder gesehen, wie's gehen könnte?

    Gruß,

    Winfried

    Freitag, 18. Mai 2012 10:06

Antworten

  • Registry auslesen wäre da der Lösungsangang, oder nicht?

    Die zentrale Lösung, das am Server auszuschalten, ist aus VFP Sicht bequem, schließt aber auch die posititve Ausnutzung durch andere Applikationen aus. Wenn Du OpLocaks jeweils an den Clients ausschaltest, ist die Servereinstellung auch egal, denn wenn ein Client kein OpLock anfordert, passiert auch nix. Wenn alle PCs im LAN Deine Foxpro App nutzen, kommt die Abschaltung an jedem Client dann allerdings auch der Netzweiten Abschaltung gleich.

    Ich finde auch heute nichts zu den Fragen, wie man den Oplock Status einer Datei ermitteln kann. Und wie man selbst da aktiv bestimmen kann, ob man ein OpLock möchte oder nicht. Das ist wohl die Natur solcher Erweiterungen, wie soll sich das abwärtskompatibel auswirken, wenn Programmiersprachen das Konzept gar nicht beherrschen? Aber das OS muß es ja wissen, weil es bewirkt, daß Schreiboperationen gecachet werden.

    Mit SMB 2.1 gibt es jetzt einen neuen Mechanismus namens Leases: http://blogs.msdn.com/b/openspecification/archive/2009/05/22/client-caching-features-oplock-vs-lease.aspx

    Man kann nur hoffen, daß das besser funktioniert. Das Problem mit OpLocks soll ja eigentlich gar nicht mehr bestehen, die Hotfixes sind schon in den Versionen integriert, die heute mit Win7 und Win2008(R2) installiert werden. Trotzdem hört man ja immer wieder noch davon. Allerdings kann ein Index auch nach wie vor aus anderen Gründen defekt werden.

    Tschüß, Olaf.


    • Als Antwort markiert WiWo Mittwoch, 23. Mai 2012 21:45
    Mittwoch, 23. Mai 2012 06:25

Alle Antworten

  • Registry auslesen wäre da der Lösungsangang, oder nicht?

    Die zentrale Lösung, das am Server auszuschalten, ist aus VFP Sicht bequem, schließt aber auch die posititve Ausnutzung durch andere Applikationen aus. Wenn Du OpLocaks jeweils an den Clients ausschaltest, ist die Servereinstellung auch egal, denn wenn ein Client kein OpLock anfordert, passiert auch nix. Wenn alle PCs im LAN Deine Foxpro App nutzen, kommt die Abschaltung an jedem Client dann allerdings auch der Netzweiten Abschaltung gleich.

    Ich finde auch heute nichts zu den Fragen, wie man den Oplock Status einer Datei ermitteln kann. Und wie man selbst da aktiv bestimmen kann, ob man ein OpLock möchte oder nicht. Das ist wohl die Natur solcher Erweiterungen, wie soll sich das abwärtskompatibel auswirken, wenn Programmiersprachen das Konzept gar nicht beherrschen? Aber das OS muß es ja wissen, weil es bewirkt, daß Schreiboperationen gecachet werden.

    Mit SMB 2.1 gibt es jetzt einen neuen Mechanismus namens Leases: http://blogs.msdn.com/b/openspecification/archive/2009/05/22/client-caching-features-oplock-vs-lease.aspx

    Man kann nur hoffen, daß das besser funktioniert. Das Problem mit OpLocks soll ja eigentlich gar nicht mehr bestehen, die Hotfixes sind schon in den Versionen integriert, die heute mit Win7 und Win2008(R2) installiert werden. Trotzdem hört man ja immer wieder noch davon. Allerdings kann ein Index auch nach wie vor aus anderen Gründen defekt werden.

    Tschüß, Olaf.


    • Als Antwort markiert WiWo Mittwoch, 23. Mai 2012 21:45
    Mittwoch, 23. Mai 2012 06:25
  • Hallo Olaf,

    ganz sicher kann ich natürlich nicht sein, dass es das OPLOCK-Problem war, allerdings ist der Fehler nach dem Abschalten nie wieder aufgetreten. Im Netzwerk hängen übrigens auch noch 6 Überwachungskameras, die an 2 Stellen ständig angezeigt werden, was extrem viel Netzwerk-Traffic macht.

    Bei den Kassensystemen ist es sicherlich am Besten, OPLOCKS am Client auszuschalten; da läuft eh normalerweise keine andere Software.

    Winfried

    Mittwoch, 23. Mai 2012 21:09