new search engine stuff

This commit is contained in:
JT Smith 2006-01-20 18:35:05 +00:00
parent 9a4972f3da
commit 18060d8e4e
7 changed files with 91 additions and 323 deletions

View file

@ -17,12 +17,6 @@ save you many hours of grief.
* You need to upgrade to the latest 6.8 release before you can
upgrade to 6.9.
* Due to new features in 6.9 there are several new perl modules you
need to install before the upgrade:
Bit::Vector::Minimal
Plucene
* If you wish to use one of the new optional template engines
you'll need to install the perl modules for them:

View file

@ -26,6 +26,43 @@ removeFiles();
finish($session); # this line required
#-------------------------------------------------
sub addSearchEngine {
print "\tUpgrading search engine.\n" unless ($quiet);
$session->db->write("create table assetIndex (
assetId varchar(22) binary not null primary key,
title varchar(255),
synopsis text,
startDate bigint,
endDate bigint,
creationDate bigint,
modifiedDate bigint,
ownerUserId varchar(22) binary,
groupToView varchar(22) binary,
groupToEdit varchar(22) binary,
lineage varchar(255),
className varchar(255),
keywords mediumtext,
fulltext (keywords)
)");
my @searchParents = $session->db->buildArray("select parentId from asset where className='WebGUI::Asset::Wobject::IndexedSearch'");
my @searchIds = $session->db->buildArray("select assetId from asset where className='WebGUI::Asset::Wobject::IndexedSearch'");
$session->db->write("delete from asset where className='WebGUI::Asset::Wobject::IndexedSearch'");
my $deleteWobject = $session->db->prepare("delete from wobject where assetId=?");
my $deleteAssetData = $session->db->prepare("delete from assetData where assetId=?");
foreach my $id (@searchIds) {
$deleteWobject->execute($id);
$deleteAssetData->execute($id);
}
$deleteWobject->finish;
$deleteAssetData->finish;
$session->db->write("drop table if exists IndexedSearch");
$session->db->write("drop table if exists IndexedSearch_default");
$session->db->write("drop table if exists IndexedSearch_default_data");
$session->db->write("drop table if exists IndexedSearch_default_words");
$session->db->write("drop table if exists IndexedSearch_docInfo");
}
#-------------------------------------------------
sub templateParsers {
print "\tAdding support for multiple template parsers.\n" unless ($quiet);
@ -46,6 +83,8 @@ sub removeFiles {
unlink '../../lib/WebGUI/Style.pm';
unlink '../../lib/WebGUI/Setting.pm';
unlink '../../lib/WebGUI/Grouping.pm';
unlink '../../lib/WebGUI/Asset/Wobject/IndexedSearch.pm';
rmtree('../../lib/WebGUI/Asset/Wobject/IndexedSearch');
}