Zum Foreninhalt wechseln

www.punbb-forum.de

Das Forum für punBB- Anwender und -Entwickler

Sie sind nicht angemeldet. Bitte melden Sie sich an oder registrieren Sie sich.


Seiten 1

Sie anmelden oder registrieren um eine Antwort zu verfassen

Pun Tags

No tags.

RSS Thema Feed

Beiträge [ 4 ]

Thema: Fragen zum Search Index

Hallo allerseits,

mal ne Frage zum Search Index von PunBB.
Ich kenne mich damit noch nicht sonderlich aus, bin grade erst dazu gekommen wie die Jungfrau zum Kind und hätte vorerst nur die Frage:

Muss man den Search Index über den Maintenance Punkt zwingend regelmäßig neu bauen, damit die Suche ordentlich funktioniert, oder ist das nur ein Performance-Schub für die Suche?

Bei uns gab es ein Problem, dass beim Posten eines neuen Eintrages oder Kommentares eine Fehlermeldung ausgegeben wurde, dass ein Duplicate Key vorliegt und das Wort nicht in die Tabelle search_words eingefügt werden kann.
Ich habe so den Eindruck, dass das Problem entweder an unserer PHP4 Installation oder am Zusammenspiel von unseren PHP4 und MySQL5 Versionen liegt, da scheinbar die bereits gespeicherten Worte ein paar Zeilen vor dem Insert-Statement nicht richtig von der Menge der zu speichernden Worte abgezogen wurden.

Ich habe das Problem damit gelöst, dass ich das SQL-Statement angepasst habe (einfach nur ein INSERT IGNORE statt INSERT) und damit treten keine Duplicate-Key-Fehler mehr auf, das Ergebnis sollte das selbe sein :-)

Mein eigentliches Problem ist nun aber, dass meine Posts nicht von der Suche gefunden werden.
Und ich weiss nicht so recht, ob das jetzt von diesem Fehler, oder ob es vom Rebuild des Indexes abhängt.

Ich weiß, es ist ein wenig konfus, aber vielleicht kann mich ja mal jemand aufklären.

Danke
Steffen

2

Re: Fragen zum Search Index

Davon hab ich auch schon gehoert.
Es scheint mit den Charsets zu tun zu haben - ein ekligs Thema...

Es gibt bei   punbb.org einen Loesungsvorschlag:
http://forums.punbb.org/viewtopic.php?id=11459
vielleicht hilft das ja schon weiter.

3

Re: Fragen zum Search Index

Hm, es ist knifflig ...
In dem Threat wird der Tip gegeben, folgenden Befehl auf die Datenbank laufen zu lassen:

alter table prefixsearch_words change word word varchar(20) binary not null default ''

Allerdings geht das nicht mehr bei mit, ich kriege folgenden:

#1062 - Duplicate entry '' for key 1

Habe mir mal die jetzige Tabellen-Struktur und die MySQL-Doku nebenbei angeschaut. Meine Tabelle enthalt tatsächlich die Spalte word als varbinary.
Irgendwie muss ein MySQL-Upgrade oder Downgrade oder auch ein Repair da rein gehakt haben und was verwürfelt haben, anders kann ich es mir nicht erklären.

Dummerweise sind jetzt solche Geschichten wie

'heute'
'heute\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0'

oder so ähnlich drinne (halt auf 20 Zeichen aufgefüllt) und wenn ich das ALTER TABLE drauf absetze mit nem VARCHAR(20) BINARY wird wahrscheinlich der "Müll" am Ende (\0\0\0\0\0\0\0\0\0\0) abgeschnitten und es kommt zum obigen Fehler ...
Wie sich das auf die Suche auswirkt kann ich mir allerdings auch nicht erklären, wahrscheinlich weil bei binary-Typen die Collation anders greift.

Kann mir mal jemand seine Original Struktur der search_words Tabelle schicken oder hier posten!?

Wäre echt top!

Grüße
Steffen

4

Re: Fragen zum Search Index

CREATE TABLE `PUNBB_search_words` (
  `id` mediumint(8) unsigned NOT NULL auto_increment,
  `word` varchar(20) character set latin1 collate latin1_bin NOT NULL default '',
  PRIMARY KEY  (`word`),
  KEY `PUNBB_search_words_id_idx` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ;

Beiträge [ 4 ]

Seiten 1

Sie anmelden oder registrieren um eine Antwort zu verfassen



Currently used extensions: pun_tags, pun_quote, pun_repository, pun_antispam, pun_bbcode, pun_poll. Copyright © 2008 PunBB

[ Generated in 0.026 seconds, 9 queries executed ]