InhaltsVergleich:Nicht genügend Speicher/Vorgang abgebrochen

German support forum

Moderators: white, Hacker, Stefan2

User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48005
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: InhaltsVergleich:Nicht genügend Speicher/Vorgang abgebrochen

Post by *ghisler(Author) »

Dafür kann man "Verzeichnisse synchronisieren" verwenden mit der Option "nach Inhalt" und "Datum ignorieren".
Author of Total Commander
https://www.ghisler.com
pba
Junior Member
Junior Member
Posts: 66
Joined: 2011-09-12, 07:35 UTC
Location: Friedberg (Hessen)

Re: InhaltsVergleich:Nicht genügend Speicher/Vorgang abgebrochen

Post by *pba »

Danke für den Tipp, da hätte ich auch selbst darauf kommen können.
PBA #53713 (personal)
User avatar
versalzen
Power Member
Power Member
Posts: 666
Joined: 2003-09-16, 11:52 UTC
Location: kölle, linksrheinisch.

Re: InhaltsVergleich:Nicht genügend Speicher/Vorgang abgebrochen

Post by *versalzen »

Was mir - seit 2007 - jedesmal auffällt, ist, dass wenn 2 Dateien bei 80% eine Ungleichheit aufweisen und TC dann das Vergleichen-Fenster öffnet um dem werten User die unterschiedlichen Stellen darzulegen, der komplette Vergleich nochmal losgeht.

Ich wundere mich jedesmal, dass nicht ab der Stelle verglichen wird, an der der erste Unterschied gefunden wurde, sondern beide Dateien nocheinmal von Anfang an durchexerziert werden, bis TC dann eeeeendlich (bei Dateien >700MB dauert es halt einige sehr lange Zeit) beim ersten Unterschied angekommen ist und ihn darstellt.
Was nützt der Löffel für die Weisheit, wenn man zu weit vom Suppentopf entfernt sitzt?

Mario
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48005
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: InhaltsVergleich:Nicht genügend Speicher/Vorgang abgebrochen

Post by *ghisler(Author) »

Das ist nicht der komplette Vergleich, sondern das Einlesen der Zeilenumbrüche (bei Textdateien), um die Ergebnisse anzeigen zu können.
Author of Total Commander
https://www.ghisler.com
User avatar
versalzen
Power Member
Power Member
Posts: 666
Joined: 2003-09-16, 11:52 UTC
Location: kölle, linksrheinisch.

Re: InhaltsVergleich:Nicht genügend Speicher/Vorgang abgebrochen

Post by *versalzen »

Aha, danke.
Spannend, ich vergleiche -selten bis gar nicht- Textdateien mit einer Größe von >700MB.

Es handelt sich aussschliesslich um Binärdateien in dieser Größe (Videoschnittdateien, Renderings, FLACs, etc.).

Da gibt es doch gar keine Zeilenumbrüche.

Auch zeigt mir TC die verglichenen Datein in binär, in der Hex-Anzeige, an.

Da passt also irgendetwas nicht zusammen. Kann man diesbezüglich evtl. irgendwo irgendetwas ein- oder umstellen? (wincmd.ini)
Was nützt der Löffel für die Weisheit, wenn man zu weit vom Suppentopf entfernt sitzt?

Mario
pba
Junior Member
Junior Member
Posts: 66
Joined: 2011-09-12, 07:35 UTC
Location: Friedberg (Hessen)

Re: InhaltsVergleich:Nicht genügend Speicher/Vorgang abgebrochen

Post by *pba »

Da haben wir es mit unterschiedlichen Anforderungen und Erwartungen zu tun. Ich habe versucht, es einmal auseinanderzusortieren - wen es interessiert ...:

Wenn ich Hr. Ghisler richtig verstanden habe bzw. das interpretiere, gibt es zwei verschiedene Vergleiche:
  • Synchronisieren
  • Vergleich (mit dem eigenen Fenster)
Beim Synchronisieren geht es um ein schnelles Feststellen von "gleich"/"ungleich" bei eingeschaltetem Inhaltsvergleich und wenn nötig Datum ignorieren (d. h. beim Auftreten des ersten Unterschieds kann man sich das Einlesen des Restes sparen, weil damit die Entscheidung "nicht gleich" feststeht; "gleich" kann man erst nach dem kompletten Lesen beider Dateien festlegen).

Beim Vergleich in der Zweifensteransicht bin ich ehrlicherweise noch nicht auf die Idee gekommen, dies für binäre Dateien zu tun. Ich habe den Binärvergleich nur einmal benutzt, um einen Fehler im Vergleich bzgl. Umlaute auf die Spur zu kommen und weiterzumelden. Vermutlich wird die Anzeige über den Schalter "binär" umgeschaltet:
"Aus" - dann erfolgt der zeilenweise Vergleich mit den üblichen Problemen für das Erkennen von Bereichen / großflächigen Änderungen und dann ist das Ermitteln der CRs etc. wichtig.
"Ein" - dann erfolgt die Ausgabe von Hex Code. Dies bläht die Datenmenge ziemlich auf (nicht nur um Faktor 2, sondern 3 wg. des zusätzlichen Leerzeichens, und dann noch die linken und rechten Ränder plus Zeilenumbruch). Da könnte das Aufbauen auch etwas länger dauern.

Wenn wir jetzt bei den Wünschen sind: Bei dem Vergleichstool in beiden Varianten wäre es schön, wenn man dem Programm mitteilen könnte, was beim Vergleich ignoriert werden sollte. Hintergrund: Ich habe viele XSD-Dateien, die in einem SVN-repository liegen. In den Files sind property-Tags, die von tortoise beim Einchecken gesetzt werden (Autor, Pfad, Datum, Revision). Ich habe dann oft den Fall, dass die Dateien identisch inhaltlich (na ja, von Code her) sind, sich aber trotzdem als ungleich angezeigt werden, weil Tags unterschiedlich sind. In dem Fall der XSD-Files liegen die property-Tags in einem Kommentar - d. h. es würde ausreichen, wenn beim Vergleich die Kommentarinhalte ignoriert würden.
PBA #53713 (personal)
User avatar
versalzen
Power Member
Power Member
Posts: 666
Joined: 2003-09-16, 11:52 UTC
Location: kölle, linksrheinisch.

Re: InhaltsVergleich:Nicht genügend Speicher/Vorgang abgebrochen

Post by *versalzen »

Dankeschön für den Versuch des Auseinandersortierens.

Dies nur zum Abschluss und zur Erklärung:

Ich meine den Vergleich via cm_CompareFilesByContent.

Ob nun bei binären oder bei Textdateien, das Verhalten ist immer identisch.
(Hier im Beispiel befindet sich der erste Unterschied, sagen wir, bei 95% der ersten oder zweiten Datei)

Im TC Hauptfenster werden also erst mal beide Dateien via "Inhalte Vergleichen" bis zu 95% eingelesen und dann öffnet sich das Fenster, welches mir die Unterschiede darstellen möchte. Und bevor mir der erste Unterschied dargestellt wird, werden nocheinmal beide Dateien komlett bis zur 95% Marke eingelesen).

Es gäbe sicherlich zügigere Möglichkeiten, dies zu bewerkstelligen, evtl. mit einem "Zeiger", der sich die Stelle des ersten Unterschiedes merkt, damit das Vergleichsfenster den Unterschied direkt anspringen kann. Wenn nur in Blöcken eingelesen wird, werden halt die letzen gelesenen Blöcke übernommen ins Vergleichsfenster, der Rest der Dateien könnte dann im Hintergrund weiter eingelesen werden. Doch das ist nur laienhaftes Vermuten/Wünschen.

P.S.
Binärdatein zu vergleichen macht z.B. bei Dateien mit Header oder sonstigen eingebundenen Metadaten Sinn. Man erkennt z.B. Unterschiede im Codec, bei Videodateien, oder - wie gesagt - in den sonstigen Metadaten. Eine 700MB Textdatei ist mir auch noch nicht regelmäßig vorgekommen :-)
Was nützt der Löffel für die Weisheit, wenn man zu weit vom Suppentopf entfernt sitzt?

Mario
Post Reply