Benutzer mit den meisten Antworten
Indexdateien werden unter Windows 7 zerstört

Frage
-
Ich habe eine VFP 6 SP5 Anwendung unter Windows 7 64 Bit installiert. Ich kann die Applikation leider noch nicht auf VFP 9 SP2 portieren. Die Anwendung läuft seit mehreren Jahren auf einer Windows 2003 Server/XP Clientumgebung sehr stabil. In den letzten 6 Jahren hatte ich max. 5 defekte Indizes bei ca. 30 Clients. Bei der Anwendung handelt es sich um ein Warenwirtschaftssystem mit Anbindung verschiedener Hardwarekomponenten (Waagen, Drucker, Scanner usw.)
Ich habe das System nun auf einem Windows 2008 64 Bit SBS Server, 8GB RAM mit 10 Windows 7 Clients laufen. Die Installation verlief ohne Probleme (unter Admin Rechten). Die Programme liefen ca. 10 Tage ohne Probleme bis Daten in den Auswertungen fehlten. Nach einem REINDEX auf alle Tabellen war alles wieder ok. Nach weiteren 7 Tagen das gleiche wieder, mit einem Internen Fehler auf allen Maschinen, wenn man die Artikelbewegungsdatei beschreiben wollte. REINDEX half auch hier, aber die zeitlichen Abstände wurden kleiner. Ich habe dann auf den Clients alle Energiesparoptionen ausgeschaltet, incl. der der Netzwerkkarte. Inzwischen muß ich fast täglich reindizieren. Die gesamte Hardware ist neu. Ich vermute, dass mir dort irgend ein Cache den Fehler verursacht. Ich hoffe die Infos reichen, sonst bitte melden. Kann mir jemand bei dem Problem helfen, oder einen Tip geben wo ich mit dem Suchen ansetzen kann? Es ist auch keine spezielle Tabelle. Es sind aber immer Tabellen mit Bewegungsdaten.
Gruß
Bernd
Freitag, 18. Juni 2010 14:28
Antworten
-
Hi,
das liegt vermutlich am aktivierten smb2. Einfach mal testweise abschalten und schauen ob es dann funktioniert.
Infos dazu gibt es zu hauf. Einfach mal nach VFP und SMB2 bingen/googlen.
Gruß -Tom- Als Antwort markiert Kay GizaMicrosoft employee Donnerstag, 1. Juli 2010 13:26
Freitag, 18. Juni 2010 14:32 -
Nein,das ist falsch.a) W2k8 unterstützt SMB1 und SMB2. SMB2 ist per Default an.b) Opportunistic Locking ist bei beiden Protokollen per Default anc) Bei SMB2 kann man es überhaupt nicht mehr abschaltenDaraus folgt:Um vernünftig mit irgendeiner File-basierten Datenbank arbeiten zu können, muss man auf SMB1 umschalten und (!) das Oplock disablen.
wOOdy
Microsoft Visual FoxPro Technology Advisor
Microsoft "Most Valuable Professional" from 1996 to 2009
Visit my XING profile! Don't know what XING is?*´¨)
¸.·´¸.·*´¨) ¸.·*¨)
(¸.·´. (¸.·` *
.·`.Visual FoxPro: It's magic !
(¸.·``··*
- Als Antwort markiert Kay GizaMicrosoft employee Donnerstag, 1. Juli 2010 13:27
Dienstag, 22. Juni 2010 08:33
Alle Antworten
-
Hi,
das liegt vermutlich am aktivierten smb2. Einfach mal testweise abschalten und schauen ob es dann funktioniert.
Infos dazu gibt es zu hauf. Einfach mal nach VFP und SMB2 bingen/googlen.
Gruß -Tom- Als Antwort markiert Kay GizaMicrosoft employee Donnerstag, 1. Juli 2010 13:26
Freitag, 18. Juni 2010 14:32 -
Hallo
@Tom: Vielen Dank für die schnelle und gute Antwort.
Eine Frage habe ich aber noch: Auf den Windows 7 64 Bit Clients gibt es keinen Schlüssel HKLM\System\CurrentControlSet\Services\MRXSmb\Parameters sonden nur \Enum muß ich dort den Parameter OplocksDisabled=1 unter \Enum eintragen oder \Parameters erstellen?
Gruß
Bernd
Samstag, 19. Juni 2010 06:32 -
Hallo Bernd,
wenn ich Deine erste Mail richtig verstanden habe, dann greifen Deine Clients auf einen W2K8 Server zu.
Es sollte genügen, den Server auf SMB1 umzustellen. Wenn Die Clients feststellen, dass der Server SMB2 nicht unterstützt, dann schalten sie automatisch auf SMB1 zurück.
Gruß -TomMontag, 21. Juni 2010 06:07 -
Hallo Bernd,
so habe ich die Dokumentationen zumindest bisher verstanden.
Anders sieht die Sache natürlich aus, wenn die DBFs auf einem Client liegen. Dann muss zumindest auf diesem als Fileserver dienenden Client SMB2 abgeschaltet werden. Erfolgt der Zugriff jedoch nur über den 2008er Server dann sollten keine Registryeingriffe auf Client Seite notwendig sein.
In der Praxis habe ich das allerdings noch nicht getestet, da wir hier auf CLient Seite noch mit 32bit XP Pro unterwwegs sind und SMB2 erst mit Vista und 2008Srv eingeführt wurde... ;-)
Gruß -TomMontag, 21. Juni 2010 08:18 -
Hallo Tom,
ich habe auf allen Clients SMB2 abgeschaltet und den Eintrag für Oplocks gemacht. Auf dem Server habe ich noch nichts umgestellt. Laut Doku sollte das ja ausreichen. Ist zwar nicht so schön, weil man alle Clients berücksichtigen muss. Meine Clients sind alles Windows 7 64 Bit Systeme.
Ich poste das Ergebis, wenn ich ein wenig Erfahrung im Echteinsatz habe.
Gruß
Bernd
Montag, 21. Juni 2010 08:34 -
Nein,das ist falsch.a) W2k8 unterstützt SMB1 und SMB2. SMB2 ist per Default an.b) Opportunistic Locking ist bei beiden Protokollen per Default anc) Bei SMB2 kann man es überhaupt nicht mehr abschaltenDaraus folgt:Um vernünftig mit irgendeiner File-basierten Datenbank arbeiten zu können, muss man auf SMB1 umschalten und (!) das Oplock disablen.
wOOdy
Microsoft Visual FoxPro Technology Advisor
Microsoft "Most Valuable Professional" from 1996 to 2009
Visit my XING profile! Don't know what XING is?*´¨)
¸.·´¸.·*´¨) ¸.·*¨)
(¸.·´. (¸.·` *
.·`.Visual FoxPro: It's magic !
(¸.·``··*
- Als Antwort markiert Kay GizaMicrosoft employee Donnerstag, 1. Juli 2010 13:27
Dienstag, 22. Juni 2010 08:33 -
Hallo Bernd,wenn du es nur auf den Clients umstellst hast du das Problem, dass ein einziger neuer noch nicht "getunter" Client das Gesamtsystem wieder zerstört. Daher besser einmalig am Server abstellen.
wOOdy
Microsoft Visual FoxPro Technology Advisor
Microsoft "Most Valuable Professional" from 1996 to 2009
Visit my XING profile! Don't know what XING is?*´¨)
¸.·´¸.·*´¨) ¸.·*¨)
(¸.·´. (¸.·` *
.·`.Visual FoxPro: It's magic !
(¸.·``··*
Dienstag, 22. Juni 2010 08:35 -
Hallo Jürgen,
ja das ist mir bewust. Momentan kann ich aber den Server nicht ohne weiteres neu starten. Deshalb habe ich diesen Weg gewählt, auch wenn man da höllisch aufpassen muß. Wenn sich dort alles ein wenig beruhigt hat, ändere ich die Einstellung auch auf dem Server. Aber sag mal wie disable ich das Oplock auf einem 64 Bit System clientseitig? Nach den Beschreibungen muss man auf den Clients unter HKLM\System\CurrentControlSet\Services\MRXSmb\Parameters OplocksDisabled=1 setzen. Es gibt da aber keinen Eintrag Parameters sondern nur Enum. Ich habe jetzt auf den Clients den Zweig um Parameters ergänzt und dort den Schlüssel eingetragen. Ist das richtig?
Gruß
Bernd
Dienstag, 22. Juni 2010 10:40 -
Hallo,
nach nunmehr 11 Tagen hartem Produktionseinsatz (es werden von 10 Erfassungsstationen jeweils mehrer hundert Datensätze parallel in eine Datei geschrieben), hatte ich keinen Indexfehler mehr. Meine Maßnahmen: SMB2 Protokoll auf den Clients ausgeschaltet und OplockDisable=1 auf den Clients.
Serverseitig habe ich noch keine Änderungen gemacht. Wie zuvor bereits erwähnt, ist diese Vorgehensweise fehlerträchtig, weil man einzelne Clients vergessen kann und damit das Problem wieder auftritt.
Gruß
Bernd
Dienstag, 29. Juni 2010 05:29 -
Hallo Bernd,danke für diese sehr gute Rückmeldung, die wieder einmal die OpLock-Problematik untermauert. Es ist wir mehr denn je schleierhaft, wieso Microsoft so ne Einstellung als Default aktiviert. (Schon klar: man will die User weg von den klassischen File-basierten Datenbanken bringen, und alle auf den gewinnfördernden SQL-Server umbbuchen)
wOOdy
Microsoft Visual FoxPro Technology Advisor
Microsoft "Most Valuable Professional" from 1996 to 2009
Visit my XING profile! Don't know what XING is?*´¨)
¸.·´¸.·*´¨) ¸.·*¨)
(¸.·´. (¸.·` *
.·`.Visual FoxPro: It's magic !
(¸.·``··*
Dienstag, 29. Juni 2010 16:15