1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-27 14:04:05 +03:00

29966 Commits

Author SHA1 Message Date
Andrew Tridgell
d21ec4f359 disable the DNS update code, as it breaks clustering
(This used to be commit 30a5f682b5fe6edcdb119af6dc736f4beb40bc26)
2008-08-13 11:54:13 +02:00
Andrew Tridgell
93d41b7165 up to release 44
(This used to be commit 5d482fe9873a20d3fd97f54f1e1216c1f13f46a1)
2008-08-13 11:54:12 +02:00
Andrew Tridgell
1a4e299c70 added a explanatory comment on tcon check
(This used to be commit f2ab2cebb9b81453dc0b6370288b85909182ae49)
2008-08-13 11:54:12 +02:00
Michael Adam
805bd92973 smbd/conn: fix prototype change of conn_close_all() in proto.h.
(Cleaning "ensure we exit with non-zero status on EOF on socket"
 after rebasing to v3-3-test which has no "make proto" anymore.)

Michael
(This used to be commit a958c6bf1e0394e98df286974d78d3b07498e0b4)
2008-08-13 11:54:12 +02:00
Andrew Tridgell
416fa081ab ensure we exit with non-zero status on EOF on socket, so the parent
can trigger a brlock db cleanup
(This used to be commit bbd49f9e1c4b50c4a596fb991f3306e1e90c0177)
2008-08-13 11:54:12 +02:00
Andrew Tridgell
b5f4373be5 fixed child exit handling and IP release handling
(This used to be commit 6fe27d296c389473c24e8c627a61bd56b364ad9f)
2008-08-13 11:54:12 +02:00
Andrew Tridgell
4b2399d5c0 log unclean shutdowns
(This used to be commit 30b83245a22ebd5e4fa4739dd2aa1805373a7eb2)
2008-08-13 11:54:12 +02:00
Andrew Tridgell
2f09edb492 register the ctdbd reconfigure message
(This used to be commit 9d3217bb28765e107c230fb90b578dcc6f5d4375)
2008-08-13 11:54:12 +02:00
Andrew Tridgell
cb7bb555b7 update configure.rpm
(This used to be commit ec8f3d75a22e7d2d7617ed33836836cd73610095)
2008-08-13 11:54:11 +02:00
Andrew Tridgell
48fecd297e increase version to 43
(This used to be commit 1d8024d261264a709b9df22fa35cdad03ab4af19)
2008-08-13 11:54:11 +02:00
Andrew Tridgell
11331eeae5 allow nested ctdb transactions in the same manner that they are
allowed for tdb. This is needed for the registry db backend.
(This used to be commit 4b04ec29c76df837a7909725bbbf4c79d5abdb4d)
2008-08-13 11:54:11 +02:00
Andrew Tridgell
d9a21089b3 update to ctdb.42 release
Michael, if you do a new release, make it 43 or later please
(This used to be commit 89556d28974dc2390dd88a8edd5e32912c45d27c)
2008-08-13 11:54:11 +02:00
Andrew Tridgell
cbb53dcd63 update to transactions4 release
(This used to be commit 9442c78b7e91051803df61f2e36e06e248e7798e)
2008-08-13 11:54:11 +02:00
Andrew Tridgell
65a78a6a52 drop retries to 5
(This used to be commit a2f70fc175b748ef160a998d0563c28381ea3466)
2008-08-13 11:54:11 +02:00
Andrew Tridgell
ca64c340c7 use CTDB_CONTROL_TRANS2_COMMIT_RETRY to prevent the counter getting
out of sync
(This used to be commit 571ec7893c8b40959c005d510c039e3f231ffc67)
2008-08-13 11:54:11 +02:00
Andrew Tridgell
55de7c1748 up release to transactions3
(This used to be commit a9f277da8b018af89ab7b9509460a158380e09d6)
2008-08-13 11:54:10 +02:00
Andrew Tridgell
fe3dd9b3e6 fixed lots of places that paniced on a failed transaction_commit,
thinking it was a failure of a transaction cancel
(This used to be commit 22dbe158ed62ae47bbcb41bba3db345294f75437)
2008-08-13 11:54:10 +02:00
Andrew Tridgell
312a04528c don't leave a dangling transaction on retry error
(This used to be commit ddf3022595fe8ca378c5f52107f42e296f852685)
2008-08-13 11:54:10 +02:00
Andrew Tridgell
0f8a6859e6 cope with the control failing completely without returning a status
(This used to be commit fe6a03e7b11cd859fddae5ba924ea5e071b8ccea)
2008-08-13 11:54:10 +02:00
Andrew Tridgell
1349e94d21 up release number
(This used to be commit 226b7d3bdf63970fc75ef08423ee984e3b7e94a5)
2008-08-13 11:54:10 +02:00
Andrew Tridgell
2592565bde handle two special cases
1) when all nodes write the same value to the record, or when writing
   a value that is already there, we can skip the write and save
   ourselves a network transactions

2) when all remote nodes fail an update, and we then fail a replay, we
   don't need to trigger a recovery. This solves a corner case where
   we could get into a recovery loop
(This used to be commit 2481bfce4307274806584b0d8e295cc7f638e184)
2008-08-13 11:54:10 +02:00
Andrew Tridgell
bd47edc8d6 mark this release as a transactions test release
(This used to be commit 9b1fa59d83890534264bec8f1190831eea37d9c3)
2008-08-13 11:54:10 +02:00
Andrew Tridgell
62bbcc6135 put a limit on the number of retries. I found a case where a recovery
could lead to it blocking forever
(This used to be commit a633390d3a7cb04a7c4e14cba9c533621793287e)
2008-08-13 11:54:09 +02:00
Andrew Tridgell
7e9229e17a we need to commit, not cancel, on record destruction
(This used to be commit ba64a757f86fb60994e12e81416083ac0fa11c21)
2008-08-13 11:54:09 +02:00
Andrew Tridgell
5c306c67aa removed more unused code
(This used to be commit 30a697c82db53f9d801e220a7c6277f873ebce67)
2008-08-13 11:54:09 +02:00
Andrew Tridgell
5031f2a6e2 all persistent databases now do all stores via automatic transactions
(This used to be commit 76fbe56e827193d939676da23a580aa0f9394dd1)
2008-08-13 11:54:09 +02:00
Andrew Tridgell
4d76ed4f38 use transactions in idmap_tdb2
(This used to be commit 32b8db27652a66a2ade547a6d27f34d0816f7296)
2008-08-13 11:54:09 +02:00
Andrew Tridgell
ee314d6930 fixed fetch of empty records
(This used to be commit 037516f1362c8d64da1d47a0cdaf83198d3eaeaf)
2008-08-13 11:54:09 +02:00
Andrew Tridgell
9bf211db6d samba3 can't handle NOREPLY yet
(This used to be commit 21729256a550509c3c038efa5acdd6ac39027dce)
2008-08-13 11:54:08 +02:00
Andrew Tridgell
b3f4b7768f cleanup debugging and fix handling of empty transaction
(This used to be commit 2e85cbe88b3d1674b915f62e02be7d005fddaa39)
2008-08-13 11:54:08 +02:00
Andrew Tridgell
0f41961e4f first cut at adding full transactions for ctdb to samba3
(This used to be commit f91a3e0f7b7737c1d0667cd961ea950e2b93e592)
2008-08-13 11:54:08 +02:00
Andrew Tridgell
9c79d1c23e got rid of the redundent cache database
(This used to be commit 126f4ac8e85458ee4693b89a184b99420f1b6bee)
2008-08-13 11:54:08 +02:00
Michael Adam
4d821dd4fd packaging(RHEL-CTDB): we are now based on 3.2.1
Michael
(This used to be commit 87e0688a261590d45d42f17e4cdce329ebe4cd8f)
2008-08-13 11:54:08 +02:00
Michael Adam
620d873183 idmap tdb2: fix inconsistent mappings by checking for race and retrying to fetch mapping.
Michael
(This used to be commit cb4c74c9c206e5a445ca636fa6562ce721ea5839)
2008-08-13 11:54:08 +02:00
Michael Adam
286974e35a dbwrap ctdb: fix a DEBUG message.
Michael
(This used to be commit d776d8df262e1753fb428450140df94e63035af5)
2008-08-13 11:54:08 +02:00
Michael Adam
134ea91278 idmap tdb2: fix broken logic in tdb2_delete_bystring().
1. use the return value that idmap_tdb2_open_perm_db() gives us
2. don't delete frep the local db if deleting from the perm db failed.
3. fix wrong interpretation of return value of the local delete

Michael
(This used to be commit 147573d7f6faab0ad90258b6a28c4b9575ccb6ea)
2008-08-13 11:54:07 +02:00
Michael Adam
6afa8e573e idmap tdb2: fix broken logic in tdb2_store_bystring().
1. use the return value that idmap_tdb2_open_perm_db() gives us
2. don't write to the local db if writing to the perm db failed.
3. fix wrong interpretation of return value of the local store

Michael
(This used to be commit be8c6b4f2f40014313899b5cbc1da9d390d94fee)
2008-08-13 11:54:07 +02:00
Michael Adam
ebaf208fc3 dbwrap ctdb: don't retry when tdb_store failed in db_ctdb_persistent_store().
Only retry when ctdbd_persisten_update() failed.

Michael
(This used to be commit ff413a4614c8b272a34b2a9e56a329a8e8749a34)
2008-08-13 11:54:07 +02:00
Michael Adam
b45305b5d8 dbwrap ctdb: add a partial mapping from tdb_error to NTSTATUS and use it for store.
Michael
(This used to be commit eaf76c751f9bde2843174b400c109304831df83e)
2008-08-13 11:54:07 +02:00
Michael Adam
8ac9cd8a32 packaging(RHEL-CTDB): Bump release number to ctdb.41 for the next RPM.
Michael
(This used to be commit 5258907818f8c1e338ab2c8fb4e8d83c6142a24e)
2008-08-13 11:54:07 +02:00
Michael Adam
873e74705f dbwrap ctdb: add db_ctdb_delete_persistent() and use it for persistent DBs
as delete_rec operation from fetch_locked()

Michael
(This used to be commit f4aab595a0219305fbedf8890e787b690660a55a)
2008-08-13 11:54:07 +02:00
Michael Adam
dd7ac4f38d dbwrap ctdb: call db_ctdb_store() in db_ctdb_delete().
to reduce code duplication.

Michael
(This used to be commit 09a197e756459877cab7b4d09f534c6a41cfdd71)
2008-08-13 11:54:07 +02:00
Michael Adam
5dcf20961e dbwrap ctdb: add a retry loop to the persistent store operation.
This is because ctdbd can fail in performing the persistent_store
due to race conditions, and this does not mean it can't succeed
the next time.

To not loop infinitely, this makes use of a new parametric option:
"dbwrap ctdb:max store retries" (integer) which defaults to 5
and sets the upper limit for the number or repeats of the
fetch/store cycle.

Michael
(This used to be commit 2bcc9e6ecef876030e552a607d92597f60203db2)
2008-08-13 11:54:06 +02:00
Michael Adam
ed66929647 dbwrap ctdb: release the lock before calling ctdbd_persistent_store()
in the persistent db_ctdb_store operation.

This is to prevent deadlocks in db_ctdb_persistent_store().

There is a tradeoff: Usually, the record is still locked
after db->store operation. This lock is usually released
via the talloc destructor with the TALLOC_FREE to
the record. So we have two choices:

- Either re-lock the record after the call to persistent_store
  or cancel_persistent update and this way not changing any
  assumptions callers may have about the state, but possibly
  introducing new race conditions.

- Or don't lock the record again but just remove the
  talloc_destructor. This is less racy but assumes that
  the lock is always released via TALLOC_FREE of the record.

I choose the first variant for now since it seems less racy.
We can't guarantee that we succeed in getting the lock
anyways. The only real danger here is that a caller
performs multiple store operations after a fetch_locked()
which is currently not the case.

Michael
(This used to be commit d004c9a7281d2577c3ba2012c8f790cc198ea700)
2008-08-13 11:54:06 +02:00
Michael Adam
fd070dc9af dbwrap ctdb: remove erroneously duplicated comment.
Michael
(This used to be commit c939c55e5182258092faceefa58a7f328f18619e)
2008-08-13 11:54:06 +02:00
Michael Adam
f49a712c15 packaging(RHEL-CTDB): Bump release number to ctdb.40 for the next RPM.
Michael
(This used to be commit b822bba9b9ae327bc6cee3f412f7e22ce28c1388)
2008-08-13 11:54:06 +02:00
Michael Adam
c9700dc87f packaging(RHEL-CTDB): Bump release number to ctdb.39 for the next RPM.
Michael
(This used to be commit 7e73792c738447049b8662617da340a73fae9bf0)
2008-08-13 11:54:06 +02:00
Ronnie Sahlberg
fb97047a84 Use transaction start/cancel for persistent writes to avoid leaving the database in an inconsistent state if we crash during the operation
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
(This used to be commit 09329f1f9114af44fc4e5e4f29a7315912313125)
2008-08-13 11:54:06 +02:00
Michael Adam
3cdc00544a packaging(RHEL-CTDB): bump Release number to ctdb.37 for next rpm.
Michael
(This used to be commit bd2158fb5f5d5c0c410fe2853f61776787e1461f)
2008-08-13 11:54:06 +02:00
Michael Adam
73f66d6243 packaging(RHEL-CTDB): Bump release number to ctdb.37 for the next RPM.
Michael
(This used to be commit e63a1a396c5cee837aed8a54b5c5ea3b2116d755)
2008-08-13 11:54:05 +02:00