[Xapian-discuss] Using multiple remote databases
Sebastian
cbimax at gmail.com
Thu Dec 21 22:35:43 GMT 2006
2006/12/20, Olly Betts <olly at survex.com>:
> On Wed, Dec 20, 2006 at 12:09:15AM -0300, Sebastian wrote:
> > That's fine. But I express myself the wrong way... suppose I have
> > three databases per country, like these paths, in one remote server:
> >
> > /var/lib/xapian
> > |_ ar
> > | |_ operation
> > | |_ hs-tariff
> > | |_ regulation
> > |_ uy
> > |_ operation
> > |_ hs-tariff
> > |_ regulation
> >
> > and I need to search database ar/operation (to scavage an import or
> > export movement). Is it possible to achieve this with a stub file?i
>
> Oh I see. Sorry, I misunderstood what you were asking and answered a
> different question. So stub databases aren't the answer for you.
> (Actually, now I think about it more you don't need a stub database to
> achieve what I thought you meant - you can just specify multiple
> databases on the command line to xapian-tcpsrv!)
>
> Currently you need to run xapian-tcpsrv once, and on a unique port, for
> each database which you want to be able to access using it.
>
> It would be feasible to extend the remote protocol to allow multiplexing
> access to one of several databases via one xapian-tcpsrv, with the
> client sending a database name to choose which database to open.
>
> There are some security concerns - you probably don't want anyone to be
> able to open any database readable by the user that ran xapian-tcpsrv.
> Perhaps the best approach is something like Omega's approach of allowing
> a relative pathname from a database directory with vetting to prevent
> ".." in the relative path.
>
> However, nobody has implemented this multiplexing feature so far.
>
> Depending on your setup, you might be able to use xapian-progsrv over
> ssh instead. For example:
>
> Xapian::Database db = Xapian::Remote::open("ssh",
> "otherhost xapian-progsrv /var/lib/xapian/ar/operation");
>
> You'll want to set up public/private keys (or perhaps ssh-agent) so that
> a password isn't required for the calling user to connect to the remote
> host.
>
> Cheers,
> Olly
>
Thanks for your help and tips.
Sebastian
More information about the Xapian-discuss
mailing list