Ticket -> Core::FulltextSearch - StaticDB = BUG

Hilfe zu Znuny Problemen aller Art
Locked
michael_maurer
Znuny advanced
Posts: 146
Joined: 07 Aug 2008, 09:20
Znuny Version: 2.4.9
Contact:

Ticket -> Core::FulltextSearch - StaticDB = BUG

Post by michael_maurer »

Moin zusammen,

da mir das SupportAssessment Modul aufgrund der Anzahl an TIckets in meinem OTRS als Ticket::SearchIndexModule setting die StaticDB empfohlen hat, habe ich das eingestellt. Nun habe ich dazu aber eine Verständnisfrage, bzw. vermute einen Fehler.

Meine Einstellungen:
Ticket::SearchIndexModule = StaticDB
WordCountMax = 1000
WordLengthMax = 30
WordLengthMin = 2

==> Daraus folgere ich, dass Wörter ab und inkl. 2 Zeichen in die Tabelle "article_search" indiziert werden sollen.

Hier ein Beispiel (Telefon-TIcket), das auf etwas anderes schließen lässt:
Von: "Kunde xyz" <xyz@xyz.de>
An: 2nd_level::SAP_BI
Betreff: TEST BI - Kundeneigene Ladungsnummer wird nicht angezeigt
Erstellt: 01.12.2010 18:03:15

Inhalt der Tabelle article_search zum Ticket:
a_subject 'test kundeneigene ladungsnummer wird nicht angezeigt'
a_subject '2010120172001222 test kundeneigene ladungsnummer wird nicht angezeigt'

Das "BI" wurde scheinbar unterschlagen.... Nachdem ich vor einiger Zeit WordLengthMin von 3 auf 2 geändert habe, hatte ich den Index natürlich per Script neu aufgebaut. Kapier ich die Funktionsweise des Moduls einfach nicht, oder handelt es sich hierbei um einen Fehler?

Thx 4 Feedback!

mfg
Michael
Last edited by michael_maurer on 26 Jan 2011, 09:00, edited 1 time in total.
Wer Deutsch sät, wird Verständnis ernten!

Prod & Test jeweils:
OTRS 2.4.9
OTRS ITSM 2.1.1
MySQL
Apache
SLES11 SP0
michael_maurer
Znuny advanced
Posts: 146
Joined: 07 Aug 2008, 09:20
Znuny Version: 2.4.9
Contact:

Re: Ticket -> Core::FulltextSearch - StaticDB = Fehler?

Post by michael_maurer »

Huhu zusammen,

zur Info: Scheint ein Fehler zu sein.
http://bugs.otrs.org/show_bug.cgi?id=6465

mfg
Michael
Wer Deutsch sät, wird Verständnis ernten!

Prod & Test jeweils:
OTRS 2.4.9
OTRS ITSM 2.1.1
MySQL
Apache
SLES11 SP0
michael_maurer
Znuny advanced
Posts: 146
Joined: 07 Aug 2008, 09:20
Znuny Version: 2.4.9
Contact:

Re: Ticket -> Core::FulltextSearch - StaticDB = Fehler?

Post by michael_maurer »

Hallo Leute,

hab versucht, das Problem selbst zu lösen. K.A. ob die Anpassungen so alle korrekt/notwendig waren, aber es funktioniert nun zumindest.
Edit: Nach Änderung muss natürlich der Fulltextindex rebuildet werden

Code: Select all

/opt/otrs/Kernel/System/Ticket/ArticleSearchIndex/StaticDB.pm

Line 40
default: WordLengthMin => 3,
new: WordLengthMin => 2,

Line 243
default: WordLengthMin => $Param{WordLengthMin},
new: WordLengthMin => 2,

Line 309 default:     my $LengthMin = $Param{WordLengthMin} ||
$Config->{WordLengthMin} || 3;
new: my $LengthMin = $Param{WordLengthMin} || $Config->{WordLengthMin} || 2;
mfg
Michael
Wer Deutsch sät, wird Verständnis ernten!

Prod & Test jeweils:
OTRS 2.4.9
OTRS ITSM 2.1.1
MySQL
Apache
SLES11 SP0
michael_maurer
Znuny advanced
Posts: 146
Joined: 07 Aug 2008, 09:20
Znuny Version: 2.4.9
Contact:

Re: Ticket -> Core::FulltextSearch - StaticDB = BUG

Post by michael_maurer »

Hallo zusammen,

hatte eben nochmal bissl Zeit... :)

Es genügt scheinbar die Zeile 243 in /opt/otrs/Kernel/System/Ticket/ArticleSearchIndex/StaticDB.pm von der offenbar defekten Variable nach dem gewünschten Wert zu ändern.

Vorher: WordLengthMin => $Param{WordLengthMin}
Nachher: WordLengthMin => 2,

mfg
Michael
Wer Deutsch sät, wird Verständnis ernten!

Prod & Test jeweils:
OTRS 2.4.9
OTRS ITSM 2.1.1
MySQL
Apache
SLES11 SP0
michael_maurer
Znuny advanced
Posts: 146
Joined: 07 Aug 2008, 09:20
Znuny Version: 2.4.9
Contact:

Re: Ticket -> Core::FulltextSearch - StaticDB = BUG

Post by michael_maurer »

Hallo zusammen,

da gabs noch ne Gemeinheit versteckt... In Zeile 287 bis 307 in /opt/otrs/Kernel/System/Ticket/ArticleSearchIndex/StaticDB.pm sind sog. StopWords hinterlegt. Diese Wörter werden für den Index-Aufbau übersprungen.

my %StopWord = (
# 'der' => 1,
# 'die' => 1,
# 'und' => 1,
# 'in' => 1,
# 'vom' => 1,
# 'zu' => 1,
# 'im' => 1,
# 'den' => 1,
# 'auf' => 1,
# 'als' => 1,
#
# 'the' => 1,
# 'of' => 1,
# 'and' => 1,
# 'in' => 1,
# 'to' => 1,
# 'a' => 1,
# 'is' => 1,
# 'for' => 1,
);

Im folgenden Fall ist dies jedoch von enormem Nachteil:

Betreff der eingehenden Mail:
[ Inhalt : 2011021872000325 ] Änderung der Parallelisierungseinstellungen

Inhalt des Felds `a_subject` in der table `article_search`:
Änderung parallelisierungseinstellungen

Da das "der" ein StopWord ist/war, wurde dies nicht indixziert. Wenn ein Anwender also nach dem vollen Betreff "Änderung der Parallelisierungseinstellungen" sucht, findet er KEIN Ticket. Da hab ich heut schon wieder Ärger von meinen OTRS Anwendern bekommen....

Auskommentieren und ./otrs.RebuildFulltextindex hat das ""Problem" beseitigt. Das zur Info :)

mfg
Michael
Last edited by michael_maurer on 18 Feb 2011, 18:00, edited 1 time in total.
Wer Deutsch sät, wird Verständnis ernten!

Prod & Test jeweils:
OTRS 2.4.9
OTRS ITSM 2.1.1
MySQL
Apache
SLES11 SP0
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Re: Ticket -> Core::FulltextSearch - StaticDB = BUG

Post by jojo »

die Volltextsuche sollte eigentlich nur auf den Body gehen (gibts bereits einen Bug dazu)
"Production": OTRS™ 8, OTRS™ 7, STORM powered by OTRS
"Testing": ((OTRS Community Edition)) and git Master

Never change Defaults.pm! :: Blog
Professional Services:: http://www.otrs.com :: enjoy@otrs.com
Locked