Datenhaltung

Proggen.org - Lernprojekt: Duplikatefinder
Benutzeravatar
fat-lobyte
Beiträge: 1398
Registriert: Sa Jul 05, 2008 12:23 pm
Wohnort: ::1
Kontaktdaten:

Re: Datenhaltung

Beitrag von fat-lobyte » Di Jul 19, 2011 8:14 am

Hab ich nicht probiert, aber ich hab in die Funktion reingekuckt und die Fehlermeldung sagt eh schon alles:
Dataholding::AppendFile() und Dataholding::AppendFile() liefern per deklaration ein bool zurück, es gibt aber keine return anweisung.
Haters gonna hate, potatoes gonna potate.

Benutzeravatar
Bebu
Beiträge: 562
Registriert: Mi Okt 21, 2009 6:19 pm
Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!

Re: Datenhaltung

Beitrag von Bebu » Di Jul 19, 2011 11:23 am

Ok, das kann sogar sehr gut sein, die Funktionen stehen zwar drinnen, aber bis auf den Funktionskörper ist da noch nicht viel los, da noch nicht wirklich angefangen. Ich muss erst einen zusätzlichen Konstruktor für FileInfo bauen, bevor es bei der Datenhaltung weitergehen kann. Mir fällt dazu noch was ein, aber das setzte ich dir in den Buildsystem Thread
Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!

Benutzeravatar
Bebu
Beiträge: 562
Registriert: Mi Okt 21, 2009 6:19 pm
Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!

Re: Datenhaltung

Beitrag von Bebu » Mi Jul 20, 2011 12:16 pm

Ok, wenn du willst, kannst du es noch einmal mit VS versuchen, diese Fehler sollten jetzt behoben sein. Leider habe ich immer noch 74 Warnungen, die ich abarbeiten muss :(
Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!

Benutzeravatar
fat-lobyte
Beiträge: 1398
Registriert: Sa Jul 05, 2008 12:23 pm
Wohnort: ::1
Kontaktdaten:

Re: Datenhaltung

Beitrag von fat-lobyte » Mi Jul 20, 2011 12:22 pm

Bebu hat geschrieben:Ok, wenn du willst, kannst du es noch einmal mit VS versuchen, diese Fehler sollten jetzt behoben sein. Leider habe ich immer noch 74 Warnungen, die ich abarbeiten muss :(
Ich habs gestern nochmal probiert und hatte 33 Compilerfehler :-D
Ich habs so verstanden, dass das "Work in Progress" ist, und ich werd jetzt einfach abwarten. Arbeite du erstmal deine Warnungen ab ;-)

Also.
Dann machen se mal.

;-)
Haters gonna hate, potatoes gonna potate.

Benutzeravatar
fat-lobyte
Beiträge: 1398
Registriert: Sa Jul 05, 2008 12:23 pm
Wohnort: ::1
Kontaktdaten:

Re: Datenhaltung

Beitrag von fat-lobyte » Mi Jul 20, 2011 4:54 pm

Hi. Ich weiß, du bist schon dran, aber hier nur zur Info die Fehler von MSVC:
errs196.txt
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Haters gonna hate, potatoes gonna potate.

Benutzeravatar
Bebu
Beiträge: 562
Registriert: Mi Okt 21, 2009 6:19 pm
Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!

Re: Datenhaltung

Beitrag von Bebu » Mi Nov 16, 2011 11:13 pm

Wollte mal wieder eine kleine Rückmeldung geben. Ich dachte die Datenhaltung wird ein Kleinigkeit im Vergleich zum Rest. Irren ist menschlich... Ich habe heute Feststellen müssen, dass ich den zugrundeliegenden SqliteWrapper komplett umbauen muss, weil Sqlite zu blöd ist :cry: Ich hatte einen Wrapper geschrieben, der die Daten im nativen Format herausholt. Aber Sqlite unterscheidet nur Text, Integer, Blobs. Jetzt hat natürlich der ganze Rattenschwanz über DataVariant und Co. überhaupt keinen Sinn mehr. unsigned long long und Co ist wohl am einfachsten als String abzuspeichern, und anschließend wieder umzuwandeln. Das ist vielleicht ein Blödsinn. Stunden von Arbeit für die Katze, das was ich jetzt brauche, hatte ich schon ganz am Anfang zur Verfügung. Lehrgeld ist manchmal bitter
Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3123
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: Datenhaltung

Beitrag von cloidnerux » Mi Nov 16, 2011 11:15 pm

Redundanz macht wiederholen unnötig.
quod erat expectandum

Benutzeravatar
fat-lobyte
Beiträge: 1398
Registriert: Sa Jul 05, 2008 12:23 pm
Wohnort: ::1
Kontaktdaten:

Re: Datenhaltung

Beitrag von fat-lobyte » Do Nov 17, 2011 1:44 am

+1

Das ist schade dass viel Zeit verloren gegangen ist. Aber bei solchen Kernkomponenten ist wichtig sie von "gscheit" zu machen, und jede ungereimtheit zu beseitigen. Wenn das Plumbing gut ist, gehts dafür in höheren Leveln schneller voran!
Haters gonna hate, potatoes gonna potate.

Benutzeravatar
Bebu
Beiträge: 562
Registriert: Mi Okt 21, 2009 6:19 pm
Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!

Re: Datenhaltung

Beitrag von Bebu » Fr Nov 18, 2011 12:33 am

So. zumindest dieser Knoten ist jetzt entwirrt. Ganz nebenbei ist die Codebasis etwas schlanker geworden, weil der Rattenschwanz jetzt weg ist.
Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!

Benutzeravatar
Bebu
Beiträge: 562
Registriert: Mi Okt 21, 2009 6:19 pm
Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!

Umstrukturierung der Datenbank

Beitrag von Bebu » So Apr 15, 2012 3:56 pm

Ich habe von fat-lobyte vor ein paar Tagen einen Bug gemeldet bekommen. Enthält eine Pfadangabe ein Hochkomma, dann explodiert das zusammengesetzte Sql Kommando innerhalb von Sqlite. Das Hochkomma wird nämlich benutzt, um Strings in einem solchen Befehl zu kennzeichnen.
Ich habe drei Möglichkeiten, um darauf zu reagieren:
Escapesequenzen um solche Fehler im Pfadstring abzufangen
Pro:
Wohl die schnellste Lösung
Contra: Gibt es bei Sqlite überhaupt solche Sequenzen?
Die Umwandlung in diesen String resultiert bei Windows zu einem Problem, weil hier intern ein wchar benutzt wird und das sowieso störend auffällt.

Die Nutzung einer Serialisierungsbibliothek um den Zustand der Klassen direkt abzuspeichern.
Pro: Von Boost verfügbar.
Contra: Eine Datenbankänderung bedeutet, das jedesmal die gesamte Datenbank neu geschrieben werden muss.

Selbstschreiben eines Binärdateiparsers mit Jornalfunktion.
Pro: Flexibel und Platzsparend.
Contra: Hoher Aufwand, praktisch ein eigenes kleines Dateisystem nötig. Wie lässt sich so etwas gestalten, damit es wiederverwendbar ist? Boost::Spirit? Template Klassen?

Das waren meine Gedankengänge zum Thema bisher. Habt ihr noch eine andere Idee? Sonstige Anregungen?
Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!

Antworten