summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2008-08-13dbwrap ctdb: call db_ctdb_store() in db_ctdb_delete().Michael Adam1-7/+2
to reduce code duplication. Michael (This used to be commit 09a197e756459877cab7b4d09f534c6a41cfdd71)
2008-08-13dbwrap ctdb: add a retry loop to the persistent store operation.Michael Adam1-51/+120
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-13dbwrap ctdb: release the lock before calling ctdbd_persistent_store()Michael Adam1-0/+26
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-13dbwrap ctdb: remove erroneously duplicated comment.Michael Adam1-1/+0
Michael (This used to be commit c939c55e5182258092faceefa58a7f328f18619e)
2008-08-13packaging(RHEL-CTDB): Bump release number to ctdb.40 for the next RPM.Michael Adam1-1/+1
Michael (This used to be commit b822bba9b9ae327bc6cee3f412f7e22ce28c1388)
2008-08-13packaging(RHEL-CTDB): Bump release number to ctdb.39 for the next RPM.Michael Adam1-1/+1
Michael (This used to be commit 7e73792c738447049b8662617da340a73fae9bf0)
2008-08-13Use transaction start/cancel for persistent writes to avoid leaving the ↵Ronnie Sahlberg3-6/+48
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-13packaging(RHEL-CTDB): bump Release number to ctdb.37 for next rpm.Michael Adam1-1/+1
Michael (This used to be commit bd2158fb5f5d5c0c410fe2853f61776787e1461f)
2008-08-13packaging(RHEL-CTDB): Bump release number to ctdb.37 for the next RPM.Michael Adam1-1/+1
Michael (This used to be commit e63a1a396c5cee837aed8a54b5c5ea3b2116d755)
2008-08-13packaging(RHEL-CTDB): bump Release number to ctdb.36 for next rpm.Michael Adam1-1/+1
Michael (This used to be commit d795c2d5dc860fbfa668160054be084fe23aa44a)
2008-08-13packaging(RHEL-CTDB): Bump release number to ctdb.35 for the next RPM.Michael Adam1-1/+1
Michael (This used to be commit 3323456e208742e160b9cabb79dc68bfbe8b1970)
2008-08-13Add a gpfs_prefetch moduleVolker Lendecke3-1/+315
This can not go upstream yet because it uses the non-GPL libgpfs. So it will not be compiled by default and will not be included in the SOFS RPMs. But upon Sven's request, we include it in the git tree and the source RPMs, so that it can be built for in-house tests. (This used to be commit fc9b30bed2d774dca6660b497cb50f982b23b885)
2008-08-13packaging(RHEL-CTDB): bump Release number to ctdb.34 for the next RPM.Michael Adam1-1/+1
Michael (This used to be commit 7f3787a79a9949e7e80c9c5e16ec504ad1c4bdb7)
2008-08-13packaging(RHEL-CTDB): update the build instructions in the README.Michael Adam1-3/+21
Michael (This used to be commit f7706c6437d6500a477cb704cb916f16fdfa1395)
2008-08-13packaging(RHEL-CTDB): bump Release to ctdb.33 for the next buildMichael Adam1-1/+1
Michael (This used to be commit 1fee80b8a643c22d356d0ca8860d5fc9580c8918)
2008-08-13packaging(RHEL-CTDB): remove the libnss_wins modules to reduce deps.Michael Adam1-5/+5
Michael (This used to be commit 7c3e4a324248d61504c4c77a63d4d31e587802af)
2008-08-13bump version number to 32Volker Lendecke1-1/+1
(This used to be commit 19becb776148b7930a0abaec8038fee1158a66c4)
2008-08-13Correctly return NULL from messaging_ctdbd_connection if messaging_init failedVolker Lendecke1-0/+1
(This used to be commit 549db133df6782bcca7d033e8573e47716877cbd)
2008-08-13Exit smbstatus cleanly if messaging_init failsVolker Lendecke1-0/+6
(This used to be commit 5fd51833a31b326d83ac2f76d06560920547f657)
2008-08-13Package 32-bit versions of libtalloc into the winbind rpmVolker Lendecke1-0/+2
(This used to be commit e52e2f7f1a09fff8ec37174a9dc98dc9b440ef87)
2008-08-13Fix README: DOCS_DIR is replaced by DOCS_TARBALLVolker Lendecke1-2/+2
(This used to be commit 3d24c5b4602140470c40f002d206212e388ae59b)
2008-08-13Bump up version numberVolker Lendecke1-1/+1
(This used to be commit ace315c2ffc4e81c87ba1d30c28578719cb1692b)
2008-08-13packaging(RHEL-CTDB): use /usr/%{_libarch} instead of %{_libdir}Michael Adam1-42/+44
To fix creation of 32bit packges on x86_64 Michael (This used to be commit ae2a353286a1a02936fb80edd6f899b1941403af)
2008-08-13packaging(RHEL-CTDB): remove duplicate block from spec file.Michael Adam1-7/+0
Michael (This used to be commit f978df86f9af480de26a6cf67c4f8e60d1e27139)
2008-08-13packaging(RHEL-CTDB): fix placement and link direction of new shared libsMichael Adam1-8/+22
libwbclient, libtalloc, libtdb, and libnetapi are now installed into /usr/lib{,64} by their SONAME. The symlink is made from the .so files to point to the SONAME files (e.g., libtdb.so.1). Michael (This used to be commit d18287b6284597878bc3683f16f001b949857e54)
2008-08-13packaging(RHEL-CTDB): bump rpm release to the next version ctdb.29Michael Adam1-1/+1
Michael (This used to be commit 0d64606da69edba20f545789e526a71d01ca40b0)
2008-08-13packaging(RHEL-CTDB): add "service winbind condrestart" to "%post common"Michael Adam1-0/+4
Michael (This used to be commit c0ecb63d9e7b11bb5c31bdf95605d68c02206220)
2008-08-13packaging(RHEL-CTDB): use "/sbin/service smb" instead of "%{initdir}/smb"Michael Adam1-1/+1
Michael (This used to be commit 58085063c46f3c55c8aebc83bb79a2dd19f73622)
2008-08-13packaging(RHEL-CTDB): ignore errors from init scripts in pre/post scripts.Michael Adam1-3/+3
Michael (This used to be commit 1cd7201e5387ca11e9b735d37b806cb14d4a8dd3)
2008-08-13packaging(RHEL-CTDB): in %preun, first stop the service then deactivateMichael Adam1-1/+1
Michael (This used to be commit b3e552d795caf6e4ab811368fda4a8a2f2d493a0)
2008-08-13packaging(RHEL-CTDB): use condrestart instead of restart in %post scriptMichael Adam1-1/+1
Michael (This used to be commit 2ccd9ef741c88772e4b7409506258e85b252c74f)
2008-08-13packaging(RHEL-CTDB): move service smb restart from %postun to %postMichael Adam1-5/+5
What would be the use of restarting a service that has just been uninstalled... Michael (This used to be commit 98116075589abb7e0c9dc391f6d1bf3452025a1d)
2008-08-13packaging(RHEL-CTDB): move "chkconfig --del winbind" to "%preun common"Michael Adam1-1/+7
remains of winbind are being removed from the main package. also stop the winbind service in the "%preun common" script. Michael (This used to be commit 758f1de7750471815a284e9fad927112b59dc085)
2008-08-13packaging(RHEL-CTDB): remove winbind init script and its linke from main pkgMichael Adam1-3/+3
Winbind along with its libraries and init script is packaged in the samba-common rpm. Michael (This used to be commit 7ebc1ea13fd975126bfc43af48a4384fc9c620e2)
2008-08-13packaging: bump the rhel-ctdb rpm releas number to ctbd.28Michael Adam1-1/+1
Michael (This used to be commit 185e24249d3dea1755558a154aa819db3bb1a605)
2008-08-13Do not call testparm in /etc/init.d/smbVolker Lendecke1-4/+5
For SOFS, we do know that we have netbios disabled, and testparm in the ctdb shutdown event locks up due to a locked registry.tdb (This used to be commit 285d55d2a273f18ec9b84011c74a8099cba193c2)
2008-08-13keep compatibility with v3-0-ctdb name for fileid:mapping optionAndrew Tridgell1-1/+1
(This used to be commit 2856d2e4a43fbcc6c8f8ac7b1613828170362861)
2008-08-13update configure.rpm for clustered Samba usageAndrew Tridgell1-31/+40
(This used to be commit 87c9f7717fc8171644c244fe697cace2968b8f8a)
2008-08-13Add winbind:online check timeout parameterVolker Lendecke1-0/+16
This is a band-aid for the rather convoluted offline/online mess in winbind right now. Winbind re-uses the offline functionality that is targeted at domain client installations on laptops to not overload disfunctional DCs. It uses the winbind cache timeout as the retry timeout after a DC reboot. I am using a parametric options because when this mess is cleaned up, that parameter needs to go away again. I'd recommend to use something like winbind:online check timeout = 30 in typical LAN environments. This means a reconnect is attempted every 30 seconds. Volker (This used to be commit 9920473cc165e75ee9aa5cbb9e568eb5fb67e9e6)
2008-08-13Attempt to fix bug 5684Volker Lendecke1-1/+1
With the ctdb checkin dde9f3f006 tdb optimized out write lock checks for write-enabled transaction. Sadly, this also removed the possibility to ever remove dead records left over from tdb_delete calls within a transaction. Tridge, please check this! Did dde9f3f006 have any reason beyond performance optimizations? Thanks, Volker (This used to be commit 3f884c4ae36f3260e63626bdd4989d9258ae6497)
2008-08-13Attempt to fix the build on Irix CCVolker Lendecke1-1/+3
(cherry picked from commit 666bf8456ac44cbbbd5524af2bf4fd89e18ddf62) (This used to be commit 8819c51809cabe6ad0843f3838de53e785a10b47)
2008-08-12Merge from Herb. print correct test statusJeremy Allison1-1/+2
(This used to be commit 8cb7ae011c8b8cb244e9b87a3ad51e27646411b6)
2008-08-12Fix bug 5686 - libsmbclient segfaults with more than one SMBCCTX.Jeremy Allison8-38/+63
Here is a patch to allow many subsystems to be re-initialized. The only functional change I made was to remove the null context tracking, as the memory allocated here is designed to be left for the complete lifetime of the program. Freeing this early (when all smb contexts are destroyed) could crash other users of talloc. Jeremy. (This used to be commit 8c630efd25cf17aff59448ca05c1b44a41964b16)
2008-08-12use variables for files used in multiple placesHerb Lewis1-17/+19
(cherry picked from commit cee044bc42d955c535dbb6bb372af01089d37756) (This used to be commit 2462562b5c90bc1c46237cd980810b0a69cd116d)
2008-08-12Make sure to always set errno on error path in OpenDir (and hence ↵Michael Adam1-0/+1
scan_directory). Michael (This used to be commit 15fc2427f91da697e0e91f7f34b0f0c6e230a9a5)
2008-08-12Fix unix_convert() for "*" after changing map_nt_error_from_unix().Michael Adam1-1/+1
map_nt_error_from_unix() now assumes that it is called in an error path and returns an error even for a given errno == 0. The original behaviour of unix_convert() used the mapping of errno == 0 ==> NT_STATUS_OK to return success through an error path. I think this must have been an oversight, and unix_convert() worked only by coincidence (or because explicitly using the knowledge of the conceptually wrong working of map_nt_error_from_unix(). This patch puts this straight by not interpreting errno == 0 as an error condition and proceeding in that case. Jeremy - please check! Michael (This used to be commit ec5956ab0df1b3f567470b2481b73da9c3c67371)
2008-08-12I found lots of places where we assume error will be set when callingAndrew Tridgell2-4/+12
one of our virtualised functions, such as db_open(), but error is only set when a system call fails, and it is not uncommon for us to fail a function internally without ever making a system call. That led to us passing back success when a function had in fact failed. I found two places where we relied on map_nt_error_from_unix() returning success when errno==0, but lots and lots of places where we relied on the reverse, so I fixed those two places. map_nt_error_from_unix() will now always return an error, returning NT_STATUS_UNSUCCESSFUL if errno is 0 (cherry picked from commit 69d40ca4c1af925d4b0e59ddc69ef8c26e6501d1) (This used to be commit 834684a524a24bb4eb46b4af583d39947dc87d95)
2008-08-12ensure we give an error code to any routines above that are lookingAndrew Tridgell1-0/+3
for one (This used to be commit 469ba9b87103aa0053c371e481acc5acf0f98ac1)
2008-08-12cifs.upcall: negatively instantiate keys on errorJeff Layton1-2/+10
When a request-key upcall exits without instantiating a key, the kernel will negatively instantiate the key with a 60s timeout. Older kernels, however seem to also link that key into the session keyring. This behavior can interefere with subsequent mount attempts until the key times out. The next request_key() call will get this negative key even if the upcall would have worked the second time. Fix this by having cifs.upcall negatively instantiate the key itself with a 1s timeout and don't attach it to the session keyring. Signed-off-by: Jeff Layton <jlayton@redhat.com> (This used to be commit f760dd3f3128c846cdeab16cc52bbb5189427955)
2008-08-12Remove two unused variablesVolker Lendecke1-2/+1
(This used to be commit 257b0401ee675b6b7eddf2b46a0f8115940e6640)