Forum OpenACS Q&A: Re: FtsContentProvider, missing bindings on oracle

Posted by Neophytos Demetriou on
From what you write, and from the package names, I would have assumed you'd need the "search" package and one of the three implementations of the FtsSearchEngineDriver interface. Running on Orace, that would be package "intermedia-driver".
This is correct.

It seems that "search" replaces "site-wide-search", which should no longer be used. But is "intermedia-driver" a complete replacement for "search"?
site-wide-search is an older package and intermedia-driver is supposed to be a "complete" replacement. intermedia-driver is also an implementation of the FtsEngineDriver provided by the "search" package.
BTW, installing intermedia-driver does NOT create an appropriate SC impl, and hence there cannot be a binding to contract FtsEngineDriver.
Well, it should. The service contracts are supposed to be defined within intermedia-driver/sql/oracle/search-sc-create.sql. As I said before, I haven't used the intermedia-driver so I don't know the details about the specialized enqueue/dequeue functions within the driver. My understanding/impression though is that it was done that way in order to use oracle intermedia features.
The last statement holds true: intermedia-driver/sql/oracle/search-sc-create.sql does define service contracts. Except for an "exit;" at the end, it's identical to search/sql/oracle/search-sc-create.sql. But that doesn't make sense.

If intermedia-driver was an implementation of the FtsSearchEngineDriver contract, it should create an impl, not redefine the contract.

Package "intermedia-driver" almost looks like a replacement for "search" -- except it lacks the UI. (I tried mounting it, but www only contains an empty doc directory.)