Displaying 3 results from an estimated 3 matches for "doubleopen".
2016 Feb 24
4
Database left unlocked by Tcl bindings
On Wed, 24 Feb 2016 03:17:35 +0000, Olly Betts <olly at survex.com> wrote:
>On Mon, Feb 22, 2016 at 12:26:27PM +0100, Eric wrote:
>> On Sun, 21 Feb 2016 22:33:22 +0000, Olly Betts <olly at survex.com> wrote:
>>> On Sun, Feb 21, 2016 at 02:15:25PM +0100, Eric J wrote:
>>>> I discovered, while trying to set up Tcl bindings for Notmuch
>>>>
2016 Feb 25
0
Database left unlocked by Tcl bindings
...ndex.
Could you try this C++ version:
#include <xapian.h>
int main() {
Xapian::WritableDatabase db("tmp.db", Xapian::DB_CREATE_OR_OPEN);
Xapian::WritableDatabase db2("tmp.db", Xapian::DB_CREATE_OR_OPEN);
}
Compile with:
g++ -O2 `xapian-config --cxxflags --libs` doubleopen.cc
And then run:
./a.out
If locking is working, this should fail (and does for me) like so:
terminate called after throwing an instance of 'Xapian::DatabaseLockError'
Aborted
> > More recent Xapian versions will try to use the new OFD locks and avoid
> > the need to fork()...
2016 Feb 25
2
Database left unlocked by Tcl bindings
...#include <xapian.h>
> int main() {
> Xapian::WritableDatabase db("tmp.db", Xapian::DB_CREATE_OR_OPEN);
> Xapian::WritableDatabase db2("tmp.db", Xapian::DB_CREATE_OR_OPEN);
> }
>
> Compile with:
>
> g++ -O2 `xapian-config --cxxflags --libs` doubleopen.cc
>
> And then run:
>
> ./a.out
>
> If locking is working, this should fail (and does for me) like so:
>
> terminate called after throwing an instance of 'Xapian::DatabaseLockError'
> Aborted
Got exactly that.
Finally, it appears that it does work with Tcl...