[Zebralist] problem deleting record with zoom
kosmas at lib.uoc.gr
Wed Jan 17 11:25:13 CET 2007
I had the same "problem" some time ago when I had set up a similar
You have to search zebra with your Local-Number (090$9), get the
matching record in xml format and then parse the record and extract
idzebra/localnumber which is recordIdOpaque required by zebra to update
or delete via extended services.
It works like a charm!
Paul POULAIN wrote:
> marc a écrit :
>>> Hélas, I still can search & find record 11.
>> Now I am getting a bit confused here: When you say that you can
>> search record '11' - do you refer to the zebra internal sysno ??
> Nope, I mean I can search (by it's title, that contains "picasso", for
> example) and get results where the document that has the biblionumber
> #11 appears.
>> Because this is not the same as an external recordIdOpaque ..
>> How are the recordId's specified in your config??
>> Can you show me your record '11' here in the mail ??
>> Does it contain the recordID somewhere ??
>> Or are you confusing recordIDOpaque and recordIDNumber ??
> I may, but I don't think so.
> All our records are indexed with a "biblionumber" that is the primary
> This biblionumber is stored in 090$9 for me, so it is in the record.
>> When you want to delete/update an existing record,you have two-three
>> 1) either you do not specify an recordIdOpaque, but just send the
>> original (or updated) record along, where you make sure that the part
>> of the record which contains your string bases ID is unaltered,
>> This requires that the recordID setting is found in zebra.cfg, see
> iiuc, that's what we want :
> I have in .cfg : recordId: (bib1,Local-Number)
> Local-Number points to 090$9
> So, it means we must pass the complete record when we want to remove
> it from zebra ?
> could we just pass a small xml with 090$9 containing biblionumber ? (I
> ask because we dont have the xml anymore when we try to remove the
> biblio from zebra : it has been removed by Koha some minuts ago : we
> have asynchronous updates between koha & zebra)
>> 2) you do externally provide your recordIdOpaque - both under insert,
>> update and delete. No 'recordID' setting is needed in zebra.cfg
>> This is the use case where you for example have all records in a
>> relational DB, and mirror them out to Zebra for fast full-text indexing.
> That's not what we to until then, and maybe we should switch to this
> To summarize :
> * we insert/update records without recordIdOpaque, but with recordID
> * we try to delete records with recordIdOpaque
> we can't do this : we must either use 1 or the other, not both at the
> same time.
> Thus, another question about the doc
> "The actions recordReplace or recordDelete need specification of the
> additional recordIdNumber parameter, which must be an existing Zebra
> internal system ID number, or the optional recordIdOpaque string
> How to understand this sentence ? isn't it contradictory with 1) ?
>> 3) You let Zebra deal with the inserts as you wish, and use the
>> 'recordIDNumber' to point to the Zebra internal sysno (which I
>> believe is your '11', but I can't know..) for an update or delete.
>> You are not allowed to use this for an insert, as Zebra generates
>> it's own ID's.
> We never tried to work with recordIDNumber (and, to say the truth, I
> don't know how to tell zebra how to give it to me ;-) )
>> Then, there are some other traps to be aware of:
>> 3) you need a general and global indexing filter instruction like
>> recordType: grs.xml
> I think we have correct things here, as we can add & update the
> database. I have only a problem for deleting records !
More information about the Zebralist