similar to: how to catch Xapian::DatabaseModifiedError in perl?

Displaying 20 results from an estimated 6000 matches similar to: "how to catch Xapian::DatabaseModifiedError in perl?"

2023 Aug 28
1
DatabaseModifiedError while iterating on mset
Olly Betts <olly at survex.com> wrote: > On Wed, Aug 23, 2023 at 01:53:27PM +0000, Eric Wong wrote: > > I'm already retrying the ->get_mset operations; but now I'm > > wondering where I'd hit DatabaseModifiedErrors while inside a > > Xapian::MSetIterator loop. > > > > I assume ->get_document is a place where it gets thrown; > > but
2011 Mar 23
1
DatabaseModifiedError
Hi, I am starting to see more frequent occurrences of a DatabaseModifiedError when users execute searches on my site. Since our index is being updated all the time, its easy to understand why these happen, but is it possible to ignore this error and execute the search against the stale revision? It's likely only a few seconds out of date, and if I follow the advice and reopen() the
2023 Aug 27
1
DatabaseModifiedError while iterating on mset
On Wed, Aug 23, 2023 at 01:53:27PM +0000, Eric Wong wrote: > I'm already retrying the ->get_mset operations; but now I'm > wondering where I'd hit DatabaseModifiedErrors while inside a > Xapian::MSetIterator loop. > > I assume ->get_document is a place where it gets thrown; > but once a document is retrieved, can iterating through > terms in one document
2023 Mar 27
1
uncaught C++ exception from Perl Search::Xapian XS?
I'm using Search::Xapian XS from Debian stable and I'm getting what appears to be an unwrapped C++ exception: terminate called after throwing an instance of 'Xapian::DatabaseModifiedError' Using `eval' from Perl5 doesn't seem effective in catching it. I'm using postlist_begin, postlist_end and ++ to iterate a PositionIterator, and reading XS/*Iterator.xs, I see the
2023 Mar 28
1
uncaught C++ exception from Perl Search::Xapian XS?
On Mon, Mar 27, 2023 at 11:46:04AM +0000, Eric Wong wrote: > I'm using Search::Xapian XS from Debian stable and I'm getting what > appears to be an unwrapped C++ exception: > > terminate called after throwing an instance of 'Xapian::DatabaseModifiedError' > > Using `eval' from Perl5 doesn't seem effective in catching it. > > I'm using
2023 Aug 23
1
DatabaseModifiedError while iterating on mset
I'm already retrying the ->get_mset operations; but now I'm wondering where I'd hit DatabaseModifiedErrors while inside a Xapian::MSetIterator loop. I assume ->get_document is a place where it gets thrown; but once a document is retrieved, can iterating through terms in one document (using TermIterator) also throw DB modified? I'm dumping multiple terms per-document to a
2007 Jul 29
0
Xapian::DatabaseModifiedError caused withintransaction
Please keep conversations on-list so that everyone can help and benefit :-) On Sun, Jul 29, 2007 at 09:15:01PM +0800, Hightman(???) wrote: > James Aylett,??? > > Even if I split the two operator into different transaction one > after another, It cause DatabaseModifiedError Also ... It seems > that if I update one document by unique term frequently (within >
2012 Dec 19
1
question about trigger of reopen
Hi all, Currently I'm implementing a retrieval system with multiple reader processes and only one writer process updating the database periodically. In a reader process, whenever a Xapian::DatabaseModifiedError exception is caught, I call function reopen() and retry. However, my problem is, when there is only a small set of modification, e.g. only one new document is added, the reader would
2006 May 20
2
xapian-tcpsrv need to reopen database?
Hi, I'm adapting the omega (in a Python way ;) to do search across multiple remotes database, for now, I have only one xapian-tcpsrc running, but I have documents being inserted at the same time, so (like I have readed in others e-mails) the xapian-tcpsrc throw the following message: Connection from 192.168.0.101, port 64161 Got exception DatabaseModifiedError: The revision being read has
2016 Sep 05
2
missing Search::Xapian on xapian 1.4.0
Hello, I am currently using xapian 1.2.23 with the Search::Xapian perl bindings. I'd like to upgrade to 1.4.0, but it seems that there is no suitable Search::Xapian available, and the SWIG-generated bindings are marked as experimental. So, my question is: Do I have to wait for the new API to get stable, or is there another way for me to upgrade to the 1.4.x branch? I'd like to avoid to
2015 Jan 20
2
Question on "single writer, multiple reader"
On Sun, Jan 18, 2015 at 04:25:29PM +0000, James Aylett wrote: > That?s exactly how it?s supposed to work. ?Eventually? (once the > writer gets sufficiently far ahead of the reader), the reader will get > a DatabaseModifiedError and will have to re-open the database, but > until then it?s up to it when it does so. You may wish to do it every > N requests, or every K seconds, or only
2017 Aug 09
1
Java bindings exceptions [was Re: Asking Help]
On Wed, Aug 09, 2017 at 11:09:55PM +0100, Olly Betts wrote: > The Xapian exception classes aren't wrapped for Java at the moment, so > currently you'll get a java.io.IOException exception, and you can check > for DatabaseModifiedError using code like this (untested): > > try { > // Code which might cause DatabaseModifiedError. > } catch (Exception e) { Sorry,
2017 Aug 09
2
Asking Help
<span style="white-space:pre"> </span>Hi£¬I am a student in China and I am using Xapian to do some projects recently, for the error DatabaseModifiedError i dont know how to catch it in java, i do not find the relative class in xapian.jar. So I write this letter for help.<div><span style="white-space:pre"> </span>So sorry to interrupt
2012 Feb 17
2
DatabaseModifiedError on get_data - best practice?
Hi, I have previously had a problem with getting this error on a get_mset call, and solved it by subclassing XapianEnquire with a backoff-and-retry algorithm (as suggested by this list, many thanks!). However, I now get it intermittently when calling get_data on a XapianDocument. The same solution doesn't seem to be quite as easy in this case, because: 1. The document is not instantiated
2023 Aug 17
1
does Xapian::Enquire hold an MVCC revision?
In other words, is it possible to avoid duplicates if new documents are inserted into the DB by another process in-between ->get_mset calls when reusing Xapian::Enquire objects? I do some expensive processing on each mset window, so I always limit the results to limit heap usage even if I'm planning on going through a big chunk of the DB: $mset = $enq->get_mset(0, 1000);
2023 Aug 18
1
does Xapian::Enquire hold an MVCC revision?
On Thu, Aug 17, 2023 at 09:28:26PM +0000, Eric Wong wrote: > In other words, is it possible to avoid duplicates if new > documents are inserted into the DB by another process in-between > ->get_mset calls when reusing Xapian::Enquire objects? The Database object itself effectively does (it works in a snapshot of the state of the database when you open it, or last called reopen() which
2017 May 17
2
Xapian 1.4.3 "Db block overwritten - are there multiple writers?"
Hi, I have a user reporting the following error during recoll indexing: flush() failed: Db block overwritten - are there multiple writers? "flush() failed" is from recoll, the rest is, I think the text of the Xapian exception. This is with Xapian 1.4.3 on Linux (I asked for more details, should be coming). I don't think that I've ever seen this error, and I also
2015 Jan 16
2
Question on "single writer, multiple reader"
Hi, dear Xapianers! I've been using Xapian in my project recently. The feature "single writer, multiple reader" is one of my favorite, but currently I can't make it work. My goal is to add more documents to the database increamentally, while the Xapian search process is not stopped. I followed "quickstartindex.cc" and "quickstartsearch.cc" on
2012 Apr 19
1
Xapian::Database->close() for perl missing
I have a xapian-daemon, which can be queried via http. A background-process generated every hour one new index and then remove and create a new symlink to the current database. /path/to/index/20120419010000 /path/to/index/20120419020000 /path/to/index/20120419030000 /path/to/index/default => /path/to/index/20120419030000 So the daemon only check the mtime of /path/to/index/default/iamchert
2014 Aug 20
6
Full MVCC in Brass
I'm one of the developers of Notmuch, an email client that makes extensive use of Xapian. For some time, full multi-version concurrency control (MVCC) has been on our wish list. Olly mentioned that brass now uses free lists---a key step toward full MVCC---and I offered to pitch in on putting the other pieces into place. Before I wade too deep into this, I wanted to propose my plan. Full