kados [Wed, 22 Feb 2006 00:56:59 +0000 (00:56 +0000)]
First go at a connection object for Zebra. You can now get a
connection object by doing:
my $Zconn = C4::Context->Zconn;
My initial tests indicate that as soon as your funcion ends
(ie, when you're done doing something) the connection will be
closed automatically. There may be some other way to make the
connection more stateful, I'm not sure...
rangi [Tue, 21 Feb 2006 00:10:16 +0000 (00:10 +0000)]
This probably will be the same file as the one in unimarc, so perhaps might be best to move them out and just into the zebra dir.
Committing now so its not lost
kados [Mon, 20 Feb 2006 13:26:11 +0000 (13:26 +0000)]
A new subroutine to handle Z39.50 extended services. You pass it a
connection object, service type, service options, and a record, and
it performs the service and handles any exception found.
rangi [Thu, 16 Feb 2006 20:51:07 +0000 (20:51 +0000)]
Little test set up that lets you type cql in which is passed to zebra
install search-test.pl on your opac (or the intranet, if intranet youll need to put the tmpl file in the intranet too)
kados [Thu, 16 Feb 2006 20:49:56 +0000 (20:49 +0000)]
destroy a connection after we're done -- we really should just have one
connection object and not destroy it until the whole transaction is
finished -- but this will do for now
thd [Thu, 16 Feb 2006 03:12:15 +0000 (03:12 +0000)]
Quick fix for functional bug in getMARCsubjects to avoid returning values that
vary between different uses of the same authorised subject heading causing
linked subject searches from the detail view to fail. Other presentation fixes
within getMARCsubjects.
tipaul [Tue, 14 Feb 2006 11:23:38 +0000 (11:23 +0000)]
(chris, read carefully)
Replacing zebraserver and zebraport by zebradb in koha.conf . The zebra connexion can be done in a single variable "server:port/database". I used this in dirty searchMarc.pm as well as in Biblio.pm. I've replaced your code in Search.pm
tipaul [Tue, 14 Feb 2006 10:54:02 +0000 (10:54 +0000)]
fixing bugs for :
* search on 2 words "applied chaos"
* retrieve results when there's only 1 answer
(still dirty & to be rewritten by chris, but it's useful for me)
rangi [Mon, 13 Feb 2006 21:03:21 +0000 (21:03 +0000)]
Start of the complete rewrite of Search.pm
It just does a simple cql search at the moment, takes a hashref of keyed by variable.
I have introduced 2 new variables to koha.conf
zebraserver and zebraport Ill add to the installer to get these set.
Very very very much a work in progress still. Thanks to paul for getting things up to this point.
tipaul [Mon, 13 Feb 2006 16:38:29 +0000 (16:38 +0000)]
some modifs to enable search on old search API with zebra. seems to work, although it is 100% dirty code that should be rewritten by someone (chris ?)
I just hacked this to have a working search to continue working on Biblio.pm & catlaoguing
+code cleaning (using biblionumber standard API name)
tipaul [Mon, 13 Feb 2006 16:35:37 +0000 (16:35 +0000)]
some modifs to enable search on old search API with zebra. seems to work, although it is 100% dirty code that should be rewritten by someone (chris ?)
I just hacked this to have a working search to continue working on Biblio.pm & catlaoguing
tipaul [Thu, 9 Feb 2006 10:59:34 +0000 (10:59 +0000)]
OK, this time it seems to work. The last blocking problem was... a space in
recordId: (bib1,Identifier-standard) just after the comma. Adam agreed it was a bug, and it should be solved soon. But now we are aware, we can avoid putting the space !
In this commit you have all what is needed to setup a working zebra DB in Unimarc :
* collection.abs is UNIMARC specific and must be rewritten for MARC21, in marc21 directory
* pdf.properties is to be copied unmodified in the marc21 directory (can also be put somewhere else)
* rebuild_zebra.pl is SLOW, but 1 step reindexing tool, using ZOOM
* rebuild_zebra_idx is FAST, but 2 step reindexing tool, and does not use zebra. run it, it will create all biblios XML files in /zebra/biblios directory, then zebraidx update biblios in your zebra directory
* zebra.cfg is the zebra config file ;-)
* test_cql2rpn.pl is a script that will query the database and show the results. Works for me, just change the query at the beginning to get answers you expect.
What has to be done :
* benchmarking : it seems the zebraidx update is faster than lightning (400biblios/sec : 10 000biblios in 25seconds), while ZOOM indexing is slow (something like 25biblios/second) More benchmarking could be done.
* completing collection.abs for UNIMARC. I'll take care of it.
* modifying Biblio.pm to use ZOOM instead of the "zebraidx through exec" running actually. I'll take care of it also.
* modify the search API & tools & screens. I'll let the ball to someone else (chris ?) for this. I agree SearchMarc.pm can be dropped and replaced by something else (maybe a new-and-clean Search.pm package)
tipaul [Wed, 25 Jan 2006 15:16:06 +0000 (15:16 +0000)]
updating DB :
* removing useless tables
* adding useful indexes
* altering some columns definitions
* The goal being to have updater working fine for foreign keys.
For me it's done, let me know if it works for you. You can see an updated schema of the DB (with constraints) on the wiki
tipaul [Fri, 6 Jan 2006 16:39:37 +0000 (16:39 +0000)]
synch'ing head and rel_2_2 (from 2.2.5, including npl templates)
Seems not to break too many things, but i'm probably wrong here.
at least, new features/bugfixes from 2.2.5 are here (tested on some features on my head local copy)
- removing useless directories (koha-html and koha-plucene)
tipaul [Wed, 4 Jan 2006 15:54:55 +0000 (15:54 +0000)]
utf8 is a : go for beta test in HEAD.
some explanations :
- updater/updatedatabase => will transform all tables in innoDB (not related to utf8, just to warn you) AND collate them in utf8 / utf8_general_ci. The SQL command is : ALTER TABLE tablename DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci.
- *-top.inc will show the pages in utf8
- THE HARD THING : for me, mysql-client and mysql-server were set up to communicate in iso8859-1, whatever the mysql collation ! Thus, pages were improperly shown, as datas were transmitted in iso8859-1 format ! After a full day of investigation, someone on usenet pointed "set NAMES 'utf8'" to explain that I wanted utf8. I could put this in my.cnf, but if I do that, ALL databases will "speak" in utf8, that's not what we want. Thus, I added a line in Context.pm : everytime a DB handle is opened, the communication is set to utf8.
- using marcxml field and no more the iso2709 raw marc biblioitems.marc field.
tipaul [Thu, 27 Oct 2005 12:08:44 +0000 (12:08 +0000)]
new features for serial module :
- the last 5 issues are now shown, and their status can be changed (but not reverted to "waited", as there can be only one "waited")
- the library can create a "distribution list". this paper contains a list of borrowers (selected from the borrower list, or manually entered), and print it for a given issue. once printed, the sheet can be put on the issue and distributed to every reader on the list (one by one).