[Xapian-tickets] [Xapian] #710: Public API for allowing custom Remote Protocol Server implementation
Xapian
nobody at xapian.org
Mon Mar 21 22:16:10 GMT 2016
#710: Public API for allowing custom Remote Protocol Server implementation
----------------------------------+------------------------
Reporter: Kronuz | Owner: olly
Type: enhancement | Status: new
Priority: high | Milestone: 1.4.x
Component: Backend-Glass | Version: git master
Severity: normal | Keywords:
Blocked By: | Blocking:
Operating System: All |
----------------------------------+------------------------
To be able to implement a Remote Protocol Server with only the xapian
public API, four changes are needed:
* Add Xapian::Enquire::prepare_mset(): prepares an enquire to get a MSet.
Xapian::Weight::Internal is filled with the statistics and a MultiMatch is
initialized.
* Add stats serialisation methods: Xapian::Enquire::serialise_stats() and
Xapian::Enquire::unserialise_stats(). These are used by MSG_QUERY and
MSG_GETMSET.
* Add Xapian::MSet::serialise() and Xapian::MSet::unserialise(). Used by
MSG_GETMSET.
* Add Xapian::RSet::serialise() and Xapian::RSet::unserialise(). Used by
MSG_QUERY.
The implementation of a custom remote server is desirable for allowing
integrations to expose a custom remote server protocol which will permit
the creation of full-blown xapian servers with remote or clustering
support to efficiently access indexes remotely. An example of such kind of
server is Xapiand https://github.com/Kronuz/Xapiand
--
Ticket URL: <https://trac.xapian.org/ticket/710>
Xapian <//xapian.org/>
Xapian
More information about the Xapian-tickets
mailing list