<feed xmlns='http://www.w3.org/2005/Atom'>
<title>samba.git/source4/lib/tdb/docs/README, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/pviktori/public_git/samba.git/'/>
<entry>
<title>Use single copy of tdb in both samba3 and samba4.</title>
<updated>2008-09-16T13:16:31+00:00</updated>
<author>
<name>Jelmer Vernooij</name>
<email>jelmer@samba.org</email>
</author>
<published>2008-09-16T13:16:31+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/pviktori/public_git/samba.git/commit/?id=7111645d3c46e55b2c180e3db0ba8a3c670a3c31'/>
<id>7111645d3c46e55b2c180e3db0ba8a3c670a3c31</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>merged changes from v3-2-test</title>
<updated>2008-01-18T04:45:22+00:00</updated>
<author>
<name>Andrew Tridgell</name>
<email>tridge@samba.org</email>
</author>
<published>2008-01-18T04:45:22+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/pviktori/public_git/samba.git/commit/?id=61a015a786c52008f4471e62750ad93507bce518'/>
<id>61a015a786c52008f4471e62750ad93507bce518</id>
<content type='text'>
(This used to be commit 7077df3e2e3f171532f6a5ac87d45201736c9c11)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(This used to be commit 7077df3e2e3f171532f6a5ac87d45201736c9c11)
</pre>
</div>
</content>
</entry>
<entry>
<title>r10421: following on discussions with simo, I have worked out a way of</title>
<updated>2007-10-10T18:38:44+00:00</updated>
<author>
<name>Andrew Tridgell</name>
<email>tridge@samba.org</email>
</author>
<published>2005-09-22T13:12:46+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/pviktori/public_git/samba.git/commit/?id=bd310b792509f7305d7dc029eb4bec109322a4bf'/>
<id>bd310b792509f7305d7dc029eb4bec109322a4bf</id>
<content type='text'>
allowing searches to proceed while another process is in a
transaction, then only upgrading the transaction lock to a write lock
on commit.

The solution is:

 - split tdb_traverse() into two calls, called tdb_traverse() and
   tdb_traverse_read(). The _read() version only gets read locks, and
   will fail any write operations made in the callback from the
   traverse.

 - the normal tdb_traverse() call allows for read or write operations
   in the callback, but gets the transaction lock, preventing
   transastions from starting inside the traverse

In addition we enforce the following rule that you may not start a
transaction within a traverse callback, although you can start a
traverse within a transaction

With these rules in place I believe all the deadlock possibilities are
removed, and we can now allow for searches to happen in parallel with
transactions
(This used to be commit 7dd31288a701d772e45b1960ac4ce4cc1be782ed)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
allowing searches to proceed while another process is in a
transaction, then only upgrading the transaction lock to a write lock
on commit.

The solution is:

 - split tdb_traverse() into two calls, called tdb_traverse() and
   tdb_traverse_read(). The _read() version only gets read locks, and
   will fail any write operations made in the callback from the
   traverse.

 - the normal tdb_traverse() call allows for read or write operations
   in the callback, but gets the transaction lock, preventing
   transastions from starting inside the traverse

In addition we enforce the following rule that you may not start a
transaction within a traverse callback, although you can start a
traverse within a transaction

With these rules in place I believe all the deadlock possibilities are
removed, and we can now allow for searches to happen in parallel with
transactions
(This used to be commit 7dd31288a701d772e45b1960ac4ce4cc1be782ed)
</pre>
</div>
</content>
</entry>
<entry>
<title>r10405: added transactions into tdb, and hook them into ldb. See my</title>
<updated>2007-10-10T18:38:41+00:00</updated>
<author>
<name>Andrew Tridgell</name>
<email>tridge@samba.org</email>
</author>
<published>2005-09-22T03:56:41+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/pviktori/public_git/samba.git/commit/?id=ede8415d61b6791114c65de1c283a4e8c11f1585'/>
<id>ede8415d61b6791114c65de1c283a4e8c11f1585</id>
<content type='text'>
samba-technical posting for more details on the transactions design.

This also adds a number of command line arguments to tdbtorture,
making it more flexible, and fixes some lock deadlock conditions in
the tdbtorture code.
(This used to be commit 06bd8abba942ec9f1e23f5c5d546cbb71ca3a701)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
samba-technical posting for more details on the transactions design.

This also adds a number of command line arguments to tdbtorture,
making it more flexible, and fixes some lock deadlock conditions in
the tdbtorture code.
(This used to be commit 06bd8abba942ec9f1e23f5c5d546cbb71ca3a701)
</pre>
</div>
</content>
</entry>
<entry>
<title>r10385: removed obsolete comment</title>
<updated>2007-10-10T18:38:36+00:00</updated>
<author>
<name>Andrew Tridgell</name>
<email>tridge@samba.org</email>
</author>
<published>2005-09-21T10:46:02+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/pviktori/public_git/samba.git/commit/?id=8f334f69b5d5fcae4a7b2b70e18b7062c46c719e'/>
<id>8f334f69b5d5fcae4a7b2b70e18b7062c46c719e</id>
<content type='text'>
(This used to be commit 40a8ad2d1eb26d1635b8f188036b04319ffd41b4)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(This used to be commit 40a8ad2d1eb26d1635b8f188036b04319ffd41b4)
</pre>
</div>
</content>
</entry>
<entry>
<title>r848: convert lib/tdb into the same layout as lib/ldb</title>
<updated>2007-10-10T17:56:02+00:00</updated>
<author>
<name>Stefan Metzmacher</name>
<email>metze@samba.org</email>
</author>
<published>2004-05-24T16:27:23+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/pviktori/public_git/samba.git/commit/?id=a3d61e0485c70ec5215c34b6caf40e2e6c6c5338'/>
<id>a3d61e0485c70ec5215c34b6caf40e2e6c6c5338</id>
<content type='text'>
metze
(This used to be commit bacab322ce89979f0ad0811cd15b73d81eceb69d)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
metze
(This used to be commit bacab322ce89979f0ad0811cd15b73d81eceb69d)
</pre>
</div>
</content>
</entry>
</feed>
