Forum OpenACS Development: Need help with Site-wide-search and search packages
I currently trying to install the site-wide-search package for OpenACS 5.0.rc1 (still...). I've seen at the doc that it's an unistalled package. What does this really mean?
I've downloaded the OpenACS 5 tarball but I found no package named site-wide-search. Only the search package.
I mounted this package but I got this error:
invalid command name "ad_site_wide_search_widget"
The package search needs a function called ad_site_wide_search_widget wich is found in the site-wide-search-defs.tcl. But this file was installed with the site-wide-search OpenACS 4.x package. Then, what is the status? Is there somebody already porting the 4.x site-wide-search package into OpenACS 5? Or is the package already available for OpenACS 5?
Thank for your help!
Installing search is a multistep process but once you have everything installed it works fine with OpenACS5.
There is installation documnentation with the package and here is some additional documentation from Dave Bauer.
I worked on this version of the site-wide-search package about 2 years ago and it was very broken especially if you added more than a couple of dozen rows.
I recently played with search for Oracle again. See the results here: OpenACS Search proposal. Development is on hold till I get at least some funding.
Your best bet is to take ACES' site-wide-search which is imho the best freely availabe OpenACS/ACS site-wide-search implementation and port it to OpenACS5.
project and I recently talked to the guy who was the lead developer on this
and his comment was: "To save time you better start from scratch".
Here's the bit that I experienced (I worked on it as well):
* Its performance with real-life amount of data was simply awful.
* It didn't work with umlauts.
* It has a lot of weird, weird code like if's that are always true, dynamic
ddl, abstraction layers etc.
Given that no-one has worked on it for more than two years it should be even
more useless to use it. E.g. it still indexes the forums packages which has
been deprecated a long time ago.
The ACES solution is the ACS3 solution which has worked in this way or another
on many ACS-backed sites, I worked about two years with it and I find it
pretty reasonable, so I think it is sound approach to port it.
The goal is to to implement a well-performing and feature-rich site-wide-search solution for OpenACS based on Oracle Intermedia (or Oracle Text for the 9i people)"
So the king of all packages will be Oracle-only?
We need a search solution that works for both RDBMS's, which implies an approach similar to the non-Oracle search package ... separation of search UI and search engine.
But (as posted here or somewhere else on openacs.org): Work is on hold anyway.
From reading it, Dirk's title on that working paper, "... specifically in AIESEC.NET", is accurate but the description he gave when linking to it above, "OpenACS Search proposal", definitely is not. It is only about AIESEC's website, and is very brief even on that; it doesn't really touch on the bigger OpenACS-in-general picture at all.
Dirk, it would be quite useful if you could extend that paper into a "Site-Wide Search in AIESEC.NET, and in OpenACS in general" proposal, with compare and contrast between AIESEC and OpenACS, practical lessons learned from AIESEC and/or other live sites, etc.
Maybe a stupid question, but from this discussion it looks like sitewide search does not exist in a presentable format. Neither in oracle nor in Postgress. Why don't take it out of the package manager, untill their is a version that will work upon install, without all the confusion? (or at least put a statemnet in the installation process about the current state of the package?
At each new release I install the packge, and expect it will work, but it doesn't. I guess it's easier for end users not have an option to install.
I understand your enthousiasm, and it would indeed be a great contribution if the would exist. At the same time it would save people a lot of frustration trying to figure out why it doen's work,
p.s Have been playing with 5 for quite some time now, and realy like what you've put yogether, a great job !!!
Btw, I ran the ACS 4.2 Oracle site-wide-search package on a small site for quite a while, and noticed and band-aided various random problems. At some point it just stopped working at all and even though I tried briefly, I never did figure out why. But by then requirements and priorities had changed somewhat and we didn't really need to get it working, so we never did. Perhaps these problems were ultimately due to the flaws Dirk touches on above...
I have only random thoughts currently that need to be structured and funneled into a document. Some of which have to do with I18N which isn't a problem in aiesec, but will be one for OpenACS. See my posts on the danger-head-unstable thread which are search-driven.
There are more random bits. E.g. not only find the package for an object easily, but also the community or subsite so that you can show the "foo meeting in the bar club".
Foo calendar item in bar club.
MP3 folder in music club
So there needs to be an inexpensive way of calculating an object's url with a proper result. Dave has some thoughts on this, maybe he can post them here.
Right now, site_node information, including URL is stored in an NSV array. If we expand that to include any parent_id, site_node, cr_folder, etc, calculating a URL is as simple as retreiving the url of the parent and appending the url of the object to the end.
Right now, some packages do this in an ad_hoc way with an index.vuh file that figures out an object_id and returns a template. If there is a site-wide object hierarchy this can be centralized, probably handled by the request processor directly.
To allow an object to appear at more than one URL, something similar to cr_symlinks could be used.
I will be exploring how all this works in a content management context and I will try to see how it can be applied site-wide. I believe that if this type of function is enabled, it will not break any existing code, it will just allow more consistent use of pretty urls and make services such as search, categories, and notifications easier to write and to use.
SWS works fine, but needs tunning, first you have to make sure your Intermedia works, without installing SWS yet, after you do this then you can start SWS install, otherwise the blame is on SWS but most of the time is the Intermedia problem.
If you use Oracle 8.1.7 then make sure INSO Filter is working (I hear that it works on 188.8.131.52.3 I could never make Intemedia INSO filter to work on 184.108.40.206.1)
If you dont' plan to use SWS indexing on File-Storage package but only on packages where content is text or html then you dont need INSO filter at all, and use NULL filter instead. This way you also gain speed.
Check my postings about SWS and if you want to see SWS at work follow the link to the website I take care of, forum search is the SWS search.
very interesting comment that you never got the INSO filters running with 220.127.116.11.1.
Do you have an idea where to download the patch from 18.104.22.168.1 to 22.214.171.124.3, or where to get a binary?
And yes, we're planning to index files a lot for a project we've got running...