[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
LMDB transcations - how
- To: "OpenLDAP, Technical" <openldap-technical@openldap.org>
- Subject: LMDB transcations - how
- From: Christian Sell <christian@gsvitec.com>
- Date: Fri, 11 Dec 2015 00:55:26 +0100 (CET)
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1449791726; l=672; s=domk; d=gsvitec.com; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:To: Reply-To:From:Date; bh=gbLD2ionAVLviZRzUKupQgPj5bp28F5o93Em3tfmnkw=; b=jSzp/jWhvcUK+3y+VBJrXFt//esbFUkTis91PFpZR/sQkFh5+dDKgMd5gel3wKex83Z h4lvXXliwA5c98LV4s8Tlt4A26TDt7YfW10U+dVtUXkft1/q/SCsnt/iK36awff8+Hdty 4ICTyNhn8dRrnlsxXoHwkXFlKui13cBvYbI=
- Importance: Medium
Hello,
I am looking for advice about how to best handle LMDB transactions and to avoid
pitfalls. Our application is multi-threaded, with several threads accessing
persistent data in a streaming fashion (reading lots of data sequentially). I am
also not sure that it will be practical to stick with one transaction per
thread, so MDB_NOTLS may be needed.
In this scenario, there are few "natural" transaction boundaries, which is why I
am asking when or how often a commit/abort (or reset/renew) should be issued.
Also, is there any issue with multiple individual read transactions being opened
from different places in the application?
thanks,
Christian