[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