[SCM] Samba Shared Repository - branch master updated

Michael Adam obnox at samba.org
Wed Nov 27 12:39:04 MST 2013


The branch, master has been updated
       via  bfbf62b ctdb:tests/simple: Nobody looks at /tmp/recloop.out so use /dev/null instead
       via  eea8780 ctdb:tests: run_tests should ignore bogus test directories
       via  240f80d ctdb:tests: New "autotest" Makefile.in target
       via  de864b8 ctdb:tests: Add -S option to support socket wrapper
       via  8ca117a ctdb:tests: Rework unit test result filtering
       via  9755485 ctdb:tests: remove unused setup_nmap_output_filter()
       via  0ae3d00 ctdb:tests/integration: Be more careful when killing ctdbd
       via  2f5d9be ctdb: Update NEWS
       via  c18f3ee ctdb-scripts: Be careful when generating unique pids for stack traces
       via  21ef3b1 ctdb-config: Simplify the default CTDB configuration file
       via  b3efb7e ctdb-scripts: Replace hard-coded /var/ctdb with CTDB_VARDIR
       via  7f20b76 ctdb-scripts: Set defaults for CTDB_DBDIR and CTDB_DBDIR_PERSISTENT
       via  7a17498 ctdb-eventscripts: Perform share check before NFS RPC checks in 60.ganesha
       via  0fe178e ctdb-tools/ctdb: Improve error checking when parsing node string
       via  44a0466 ctdb-recoverd: Only respond to currently queued ipreallocated requests
       via  a6dbe12 ctdb-scripts: Add an early exit to statd-callout's notify case
       via  f279a97 ctdb-eventscripts: Remove the nfs_statd_update() call from 60.ganesha
       via  a8f2791 ctdb-tests/integration: Neaten up some of the persistent database tests
       via  d7df548 ctdb-tools/ctdb: Fix tstore command to generate ltdb header internally
       via  14ee822 ctdb-tests/takeover: Fix bogus test description
       via  c655113 ctdb-tests/simple: User sleep_for() instead of sleep
       via  2b6db90 ctdb-tests/simple: Update persistent DB tests
       via  efc77ba ctdb-recoverd: For persistent databases a sequence number of 0 is valid
       via  4ea721b ctdb-locking: Use vfork instead of fork to exec helpers
       via  d21919c ctdb-common: Refactor code to keep track of child processes
       via  86802b0 ctdb-scripts: Run a single instance of debug_locks.sh at a give time
       via  0eeb73c ctdb-locking: Update current lock statistics when lock is scheduled
       via  3879e99 ctdb-locking: Do not merge multiple lock requests to avoid unfair scheduling
       via  094f34e ctdb-locking: Implement active lock requests limit per database
       via  1dcf01f ctdb-scripts: Rewrite statd-callout to avoid 10 minute lag
       via  8dc416c ctdb-client: Treat empty __db_sequence_number__ record as 0
       via  6179c3a ctdb-doc: Update ctdb.1 - primarily to add pdelete/pfetch/pstore/ptrans
       via  e850cdd ctdb-tools/ctdb: New ptrans command
       via  297a4a6 ctdb-onnode: New -i option to stop stdin from being closed
       via  3c3e670 ctdb-tests/integration: try_command_on_node() shouldn't lose onnode options
       via  028fe93 ctdb-recoverd: Fix backward compatibility for CTDB_SRVID_TAKEOVER_RUN
       via  4ab58a1 ctdb-scripts: debug_locks.sh should use configuration to find TDB location
       via  6fbf399 ctdb-recoverd: A node refuses to play against itself
       via  2038d16 ctdb-recoverd: Remove duplicate code to update flags during recovery
       via  d261a75 ctdb-build: Update to latest upstream config.guess
       via  b2b348c ctdb-tools/ctdb: Fix db commands when dbid is given instead of name
       via  296bd44 ctdb-tests: CTDB tool should always be invoked as $CTDB instad of ctdb
       via  c91394c ctdb-tests: No need to run onnode in parallel for single node
       via  780391c ctdb-tests: Remove -q option to try_command_on_node
      from  6de10ac build: check linux/fs.h for compression flags

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit bfbf62b6c91b368b1234f447352a89cd3961d81f
Author: Martin Schwenke <martin at meltin.net>
Date:   Thu Nov 21 16:38:43 2013 +1100

    ctdb:tests/simple: Nobody looks at /tmp/recloop.out so use /dev/null instead
    
    Otherwise this should use mktemp, something should look at the output
    and the file should be removed.  :-)
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>
    
    Autobuild-User(master): Michael Adam <obnox at samba.org>
    Autobuild-Date(master): Wed Nov 27 20:39:00 CET 2013 on sn-devel-104

commit eea87806acea74ddcd7265f5cf6f280e5dbe5354
Author: Martin Schwenke <martin at meltin.net>
Date:   Thu Nov 21 16:22:52 2013 +1100

    ctdb:tests: run_tests should ignore bogus test directories
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 240f80d02bfbe23284f63b1cbdf6e61527f9f0a9
Author: Martin Schwenke <martin at meltin.net>
Date:   Thu Nov 14 20:34:50 2013 +1100

    ctdb:tests: New "autotest" Makefile.in target
    
    This needs to run with socket wrapper and needs to stop after the 1st
    error.
    
    Pair-Programmed-With: Michael Adam <obnox at samba.org>
    Pair-programmed-with: Amitay Isaacs <amitay at gmail.com>
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Signed-off-by: Michael Adam <obnox at samba.org>
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>

commit de864b88c3f2f69da64f23c3df294b2b1df91831
Author: Martin Schwenke <martin at meltin.net>
Date:   Thu Nov 21 15:38:06 2013 +1100

    ctdb:tests: Add -S option to support socket wrapper
    
    Pair-programmed-with: Amitay Isaacs <amitay at gmail.com>
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 8ca117a68e525db57623ce529690b24c45afa1e3
Author: Martin Schwenke <martin at meltin.net>
Date:   Fri Nov 15 12:22:05 2013 +1100

    ctdb:tests: Rework unit test result filtering
    
    Using a variable is too fragile, so use a function instead.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 97554854439e83ebb9e99ce4ebb6e49de8e7a5a9
Author: Martin Schwenke <martin at meltin.net>
Date:   Fri Nov 15 12:22:05 2013 +1100

    ctdb:tests: remove unused setup_nmap_output_filter()
    
    The tests that used it have gone.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 0ae3d009f36066c794e6f39c6dd45735e706df34
Author: Martin Schwenke <martin at meltin.net>
Date:   Thu Nov 14 20:36:52 2013 +1100

    ctdb:tests/integration: Be more careful when killing ctdbd
    
    Also match $TEST_VAR_DIR in the socket name.  This means that we'll
    only ever kill ctdbd process belong to our own test run.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 2f5d9be754ba37ebc37e44da4e3b3a9207d3655d
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Nov 25 19:28:10 2013 +1100

    ctdb: Update NEWS
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Pair-programmed-with: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit c18f3eeffbb93d4e759198c7c2b85aea2c3a6338
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Tue Nov 26 15:41:50 2013 +1100

    ctdb-scripts: Be careful when generating unique pids for stack traces
    
    sort expects the data to be line based, so make it so.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 21ef3b1cc0b74aefed533e2129d7677e59451f86
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Tue Nov 26 14:38:58 2013 +1100

    ctdb-config: Simplify the default CTDB configuration file
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Pair-programmed-with: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit b3efb7ea5188480ade90eaa91c366ad5e32ceea2
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Tue Nov 26 14:29:52 2013 +1100

    ctdb-scripts: Replace hard-coded /var/ctdb with CTDB_VARDIR
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 7f20b760ec24ba9e7d2d773425ddf074e9bbf597
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Tue Nov 26 13:27:46 2013 +1100

    ctdb-scripts: Set defaults for CTDB_DBDIR and CTDB_DBDIR_PERSISTENT
    
    If these configuration variables are not defined, then there should
    a default fallback.  This is a workaround till CTDB compile time
    configuration can be accessed at runtime.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 7a174985ff55c64b875fd1b1e303d83ef836c077
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Tue Nov 26 11:39:54 2013 +1100

    ctdb-eventscripts: Perform share check before NFS RPC checks in 60.ganesha
    
    If NFS RPC checks do restart Ganesha, then it's possible that share
    check can fail prematurely.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 0fe178eb3ae75c08b040813ddb4ed7b8ac3ead44
Author: Martin Schwenke <martin at meltin.net>
Date:   Fri Nov 22 13:57:31 2013 +1100

    ctdb-tools/ctdb: Improve error checking when parsing node string
    
    If a node isn't numeric then it is silently converted to 0.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 44a0466ac1c69fe9f0734a6225c1a1a38e48299a
Author: Martin Schwenke <martin at meltin.net>
Date:   Fri Nov 22 13:57:03 2013 +1100

    ctdb-recoverd: Only respond to currently queued ipreallocated requests
    
    Otherwise new requests can come in during the latter parts of the
    takeover run when the IP allocation algorithm has already run, and the
    new requests will be dequeued even though they haven't really be
    processed.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Pair-programmed-with: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit a6dbe126f5adb9368143da731a623ce4c61c0203
Author: Martin Schwenke <martin at meltin.net>
Date:   Tue Nov 19 15:40:08 2013 +1100

    ctdb-scripts: Add an early exit to statd-callout's notify case
    
    If $statd_state is empty then the loop will run once and print
    spurious errors.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit f279a97ca4b7ed0da9716bf21e17f5865b55a8ae
Author: Martin Schwenke <martin at meltin.net>
Date:   Tue Nov 19 15:37:58 2013 +1100

    ctdb-eventscripts: Remove the nfs_statd_update() call from 60.ganesha
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit a8f2791a9d6b52d801bafd27247da3bcb419ee8e
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Nov 18 21:04:49 2013 +1100

    ctdb-tests/integration: Neaten up some of the persistent database tests
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit d7df54873a026a9029b4883d13ea82060ef51427
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Mon Nov 18 15:09:27 2013 +1100

    ctdb-tools/ctdb: Fix tstore command to generate ltdb header internally
    
    This fixes an alignment discrepancy on 32-bit vs 64-bit platforms.
    
      sizeof(struct ctdb_ltdb_header) = 20  (32-bit)
                                      = 24  (64-bit)
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 14ee82263c16e6a412e870b72cef94ac1ae573e4
Author: Martin Schwenke <martin at meltin.net>
Date:   Fri Nov 15 15:31:03 2013 +1100

    ctdb-tests/takeover: Fix bogus test description
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit c6551132f5d5e5e09fd5024683a936a262cbd403
Author: Martin Schwenke <martin at meltin.net>
Date:   Fri Nov 15 15:23:14 2013 +1100

    ctdb-tests/simple: User sleep_for() instead of sleep
    
    Progress...
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 2b6db9041dcac3cb7950f151294b92dc1e569142
Author: Martin Schwenke <martin at meltin.net>
Date:   Fri Nov 15 15:21:58 2013 +1100

    ctdb-tests/simple: Update persistent DB tests
    
    * Low level DB checks should ignore the sequence number record.
    
    * A restart is needed after messing with the RecoverPDBBySeqNum
      tunable.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Pair-programmed-with: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit efc77ba6ac14a79a00c51395bd9600e11bca739c
Author: Martin Schwenke <martin at meltin.net>
Date:   Fri Nov 15 15:20:40 2013 +1100

    ctdb-recoverd: For persistent databases a sequence number of 0 is valid
    
    Otherwise recovery ends up done by RSN when it is unnecessary.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Pair-programmed-with: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 4ea721b2c16597432dcf517170f7859c713d063e
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Tue Nov 19 15:31:39 2013 +1100

    ctdb-locking: Use vfork instead of fork to exec helpers
    
    There is a significant overhead using fork() over vfork(), specially
    when the child process execs a helper.  The overhead is in memory space
    and time.
    
        # strace -c ./test_fork 1024 200
        count=1024, size=204800, total=200M
        failed fork=0
        time for fork() = 4879.597000 us
        % time     seconds  usecs/call     calls    errors syscall
        ------ ----------- ----------- --------- --------- ----------------
        100.00    4.543321        3304      1375       375 clone
          0.00    0.000071           0      1033           mmap
          0.00    0.000000           0         1           read
          0.00    0.000000           0         3           write
          0.00    0.000000           0         2           open
          0.00    0.000000           0         2           close
          0.00    0.000000           0         3           fstat
          0.00    0.000000           0         3           mprotect
          0.00    0.000000           0         1           munmap
          0.00    0.000000           0         3           brk
          0.00    0.000000           0         1         1 access
          0.00    0.000000           0         1           execve
          0.00    0.000000           0         1           arch_prctl
        ------ ----------- ----------- --------- --------- ----------------
        100.00    4.543392                  2429       376 total
    
        # strace -c ./test_vfork 1024 200
        count=1024, size=204800, total=200M
        failed fork=0
        time for fork() = 82.041000 us
        % time     seconds  usecs/call     calls    errors syscall
        ------ ----------- ----------- --------- --------- ----------------
         96.47    0.001204           1      1000           vfork
          3.53    0.000044           0      1033           mmap
          0.00    0.000000           0         1           read
          0.00    0.000000           0         3           write
          0.00    0.000000           0         2           open
          0.00    0.000000           0         2           close
          0.00    0.000000           0         3           fstat
          0.00    0.000000           0         3           mprotect
          0.00    0.000000           0         1           munmap
          0.00    0.000000           0         3           brk
          0.00    0.000000           0         1         1 access
          0.00    0.000000           0         1           execve
          0.00    0.000000           0         1           arch_prctl
        ------ ----------- ----------- --------- --------- ----------------
        100.00    0.001248                  2054         1 total
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit d21919c8b4abb5151bdac67c373eb5e85f6a84b4
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Tue Nov 19 16:13:20 2013 +1100

    ctdb-common: Refactor code to keep track of child processes
    
    This code can then be used to track child processes created with vfork().
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 86802b05f62384348084bd1cae166ff8fb72bdbe
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Fri Nov 15 18:59:04 2013 +1100

    ctdb-scripts: Run a single instance of debug_locks.sh at a give time
    
    This prevents spamming of logs if multiple lock requests are waiting
    and keep timing out.
    
    Also, improve the logging format with separators.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 0eeb73c1879dbb45db32e68f1e4cdbbfd3f9c14f
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Fri Nov 15 18:36:09 2013 +1100

    ctdb-locking: Update current lock statistics when lock is scheduled
    
    When a child process is created for a lock request, the current locks
    statistics should be updated immediately.  This will provide accurate
    information on number of active lock requests.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 3879e9991f51638290006cf9382c6c487b2f191a
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Mon Nov 18 15:48:22 2013 +1100

    ctdb-locking: Do not merge multiple lock requests to avoid unfair scheduling
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 094f34e9bff0ea0499d18a829125b75344bbf65f
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Fri Nov 15 15:58:59 2013 +1100

    ctdb-locking: Implement active lock requests limit per database
    
    This limit was currently a global limit and not per database.  This
    prevents any database freeze lock requests from getting scheduled if
    the global limit was reached.
    
    Only individual record requests should be limited and database freeze
    requests should always get scheduled.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 1dcf01f4a684e219e89163356fa8702f103b8ae6
Author: Martin Schwenke <martin at meltin.net>
Date:   Fri Nov 8 16:41:11 2013 +1100

    ctdb-scripts: Rewrite statd-callout to avoid 10 minute lag
    
    This is naive and assumes no performance problems when updating
    persistent DBs.  It also does no error handling.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Pair-programmed-with: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 8dc416c06912cd0bca5380b29064a3e620b26afc
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Nov 13 17:45:25 2013 +1100

    ctdb-client: Treat empty __db_sequence_number__ record as 0
    
    This fixes the issue of transaction commit failing due to an empty
    __db_sequence_number__ record in persistent database left by previous
    cancelled transaction.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 6179c3aef83c3c6ecd96c04a0df3ce1fca3d9cea
Author: Martin Schwenke <martin at meltin.net>
Date:   Wed Nov 13 16:19:00 2013 +1100

    ctdb-doc: Update ctdb.1 - primarily to add pdelete/pfetch/pstore/ptrans
    
    Also:
    
    * More <refentryinfo> above <refmeta> to make the XML valid.
    
    * Describe DB argument in introduction and use it for database
      commands.
    
    * Remove unnecessary format="linespecific" from <screen> tags, since
      it will not be allowed in DocBook 5.0.
    
    * Sort the items in "INTERNAL COMMANDS".
    
    * Update/simplify some command descriptions.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit e850cddcc4757298103b0cef0bd3734eec07f808
Author: Martin Schwenke <martin at meltin.net>
Date:   Wed Nov 6 13:43:53 2013 +1100

    ctdb-tools/ctdb: New ptrans command
    
    Also add test.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Pair-programmed-with: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 297a4a640dbb48fae50d24c9d7aff397df9b988a
Author: Martin Schwenke <martin at meltin.net>
Date:   Wed Nov 13 14:04:17 2013 +1100

    ctdb-onnode: New -i option to stop stdin from being closed
    
    This can be useful for piping data to onnode in certain circumstances.
    
    There are now also enough command-line options that they should
    definitely be alphabetically ordered.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 3c3e670d83e2f6a514d40db2cc25107b80f0087d
Author: Martin Schwenke <martin at meltin.net>
Date:   Wed Nov 13 14:13:52 2013 +1100

    ctdb-tests/integration: try_command_on_node() shouldn't lose onnode options
    
    Currently it only passes the last (non -v) option seen.  It should
    pass them all.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 028fe930b65bd97261eaf689d54ffeb3ea0746db
Author: Martin Schwenke <martin at meltin.net>
Date:   Tue Nov 12 15:16:49 2013 +1100

    ctdb-recoverd: Fix backward compatibility for CTDB_SRVID_TAKEOVER_RUN
    
    When running a mixed version cluster, compatibility with older
    versions was was broken during recent refactorisation.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Pair-programmed-with: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 4ab58a12a1895bb3be78e00045ff03ba65894ea5
Author: Martin Schwenke <martin at meltin.net>
Date:   Mon Nov 4 12:56:39 2013 +1100

    ctdb-scripts: debug_locks.sh should use configuration to find TDB location
    
    That is, don't use fixed paths.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Pair-programmed-with: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 6fbf399191cddbf87181f4cf837f352df5dbfa76
Author: Martin Schwenke <martin at meltin.net>
Date:   Fri Nov 1 14:34:20 2013 +1100

    ctdb-recoverd: A node refuses to play against itself
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Pair-programmed-with: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 2038d166ad0e283708e50378128671e985bcaed2
Author: Martin Schwenke <martin at meltin.net>
Date:   Thu Nov 14 14:25:47 2013 +1100

    ctdb-recoverd: Remove duplicate code to update flags during recovery
    
    This also happens earlier in do_recovery() and the nodemap is not
    updated after that, so this update is redundant.
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit d261a75ff5edcb22afc9fb1656831ae5ee9896ef
Author: Martin Schwenke <martin at meltin.net>
Date:   Thu Nov 14 14:14:10 2013 +1100

    ctdb-build: Update to latest upstream config.guess
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit b2b348c219509069cc35d3d9a926d04ec9a8e11a
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Nov 13 15:25:46 2013 +1100

    ctdb-tools/ctdb: Fix db commands when dbid is given instead of name
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 296bd44c043cee8e662c2056abd1614da9232c87
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Nov 13 14:33:31 2013 +1100

    ctdb-tests: CTDB tool should always be invoked as $CTDB instad of ctdb
    
    $CTDB_TEST_WRAPPER is required only to run test functions or test binaries
    on remote nodes.  For running ctdb command, $CTDB is sufficient.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit c91394c950bd4e8cd1b36c73f9051cc0560c5352
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Nov 13 14:25:59 2013 +1100

    ctdb-tests: No need to run onnode in parallel for single node
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 780391c0ba4ed1eb08b6540e7b66f0c6c6d0c79e
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Wed Nov 13 14:19:43 2013 +1100

    ctdb-tests: Remove -q option to try_command_on_node
    
    This option is always passed to onnode by default.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Michael Adam <obnox at samba.org>

-----------------------------------------------------------------------

Summary of changes:
 ctdb/Makefile.in                                  |    3 +
 ctdb/NEWS                                         |   38 +++
 ctdb/client/ctdb_client.c                         |    5 +
 ctdb/common/ctdb_fork.c                           |   22 +-
 ctdb/config.guess                                 |  149 ++++++----
 ctdb/config/ctdb.sysconfig                        |  341 ++-------------------
 ctdb/config/debug_locks.sh                        |   73 +++--
 ctdb/config/events.d/00.ctdb                      |    4 +-
 ctdb/config/events.d/60.ganesha                   |   16 +-
 ctdb/config/events.d/60.nfs                       |    4 -
 ctdb/config/statd-callout                         |  202 ++++++-------
 ctdb/doc/ctdb.1.xml                               |  324 ++++++++++++--------
 ctdb/doc/onnode.1.xml                             |   12 +
 ctdb/include/ctdb_client.h                        |    1 +
 ctdb/include/ctdb_private.h                       |   11 +-
 ctdb/server/ctdb_lock.c                           |   37 ++-
 ctdb/server/ctdb_recoverd.c                       |   52 ++--
 ctdb/tests/eventscripts/scripts/local.sh          |   11 +-
 ctdb/tests/scripts/integration.bash               |   40 +++-
 ctdb/tests/scripts/run_tests                      |   12 +-
 ctdb/tests/scripts/unit.sh                        |   22 +-
 ctdb/tests/simple/51_ctdb_bench.sh                |    2 +-
 ctdb/tests/simple/52_ctdb_fetch.sh                |    2 +-
 ctdb/tests/simple/53_ctdb_transaction.sh          |    2 +-
 ctdb/tests/simple/54_ctdb_transaction_recovery.sh |    4 +-
 ctdb/tests/simple/55_ctdb_ptrans.sh               |  127 ++++++++
 ctdb/tests/simple/70_recoverpdbbyseqnum.sh        |  200 ++++++-------
 ctdb/tests/simple/71_ctdb_wipedb.sh               |   53 ++--
 ctdb/tests/simple/72_update_record_persistent.sh  |   58 ++--
 ctdb/tests/simple/73_tunable_NoIPTakeover.sh      |   20 +-
 ctdb/tests/simple/75_readonly_records_basic.sh    |   28 +-
 ctdb/tests/simple/76_ctdb_pdb_recovery.sh         |   26 +-
 ctdb/tests/simple/77_ctdb_db_recovery.sh          |   26 +-
 ctdb/tests/simple/80_ctdb_traverse.sh             |    8 +-
 ctdb/tests/takeover/lcp2.022.sh                   |    2 +-
 ctdb/tests/takeover/scripts/local.sh              |    3 -
 ctdb/tests/tool/scripts/local.sh                  |    6 -
 ctdb/tools/ctdb.c                                 |  297 +++++++++++++++----
 ctdb/tools/onnode                                 |   15 +-
 39 files changed, 1238 insertions(+), 1020 deletions(-)
 mode change 100644 => 100755 ctdb/config/debug_locks.sh
 create mode 100755 ctdb/tests/simple/55_ctdb_ptrans.sh


Changeset truncated at 500 lines:

diff --git a/ctdb/Makefile.in b/ctdb/Makefile.in
index 55b21b7..eb280f2 100755
--- a/ctdb/Makefile.in
+++ b/ctdb/Makefile.in
@@ -389,6 +389,9 @@ install_pmda:
 install_tests: all
 	tests/INSTALL --destdir=$(DESTDIR) --datarootdir=$(prefix)/share --libdir=$(libdir) --bindir=$(bindir) --etcdir=$(etcdir)
 
+autotest: all
+	tests/run_tests.sh -e -S -C
+
 test: all
 	tests/run_tests.sh -V tests/var
 
diff --git a/ctdb/NEWS b/ctdb/NEWS
index ae4cff6..6dee537 100644
--- a/ctdb/NEWS
+++ b/ctdb/NEWS
@@ -1,3 +1,41 @@
+Changes in CTDB 2.5.1
+=====================
+
+Important bug fixes
+-------------------
+
+* The locking code now correctly implements a per-database active
+  locks limit.  Whole database lock requests can no longer be denied
+  because there are too many active locks - this is particularly
+  important for freezing databases during recovery.
+
+* The debug_locks.sh script locks against itself.  If it is already
+  running then subsequent invocations will exit immediately.
+
+* ctdb tool commands that operate on databases now work correctly when
+  a database ID is given.
+
+* Various code fixes for issues found by Coverity.
+
+Important internal changes
+--------------------------
+
+* statd-callout has been updated so that statd client information is
+  always up-to-date across the cluster.  This is implemented by
+  storing the client information in a persistent database using a new
+  "ctdb ptrans" command.
+
+* The transaction code for persistent databases now retries until it
+  is able to take the transaction lock.  This makes the transation
+  semantics compatible with Samba's implementation.
+
+* Locking helpers are created with vfork(2) instead of fork(2),
+  providing a performance improvement.
+
+* config.guess has been updated to the latest upstream version so CTDB
+  should build on more platforms.
+
+
 Changes in CTDB 2.5
 ===================
 
diff --git a/ctdb/client/ctdb_client.c b/ctdb/client/ctdb_client.c
index e2eccb7..885dbfd 100644
--- a/ctdb/client/ctdb_client.c
+++ b/ctdb/client/ctdb_client.c
@@ -4186,6 +4186,11 @@ static int ctdb_fetch_db_seqnum(struct ctdb_db_context *ctdb_db, uint64_t *seqnu
 		return 0;
 	}
 
+	if (data.dsize == 0) {
+		*seqnum = 0;
+		return 0;
+	}
+
 	if (data.dsize != sizeof(*seqnum)) {
 		DEBUG(DEBUG_ERR, (__location__ " Invalid data recived len=%zi\n",
 				  data.dsize));
diff --git a/ctdb/common/ctdb_fork.c b/ctdb/common/ctdb_fork.c
index d372ae0..1d7d9aa 100644
--- a/ctdb/common/ctdb_fork.c
+++ b/ctdb/common/ctdb_fork.c
@@ -45,6 +45,19 @@ bool ctdb_is_child_process(void)
 	return is_child;
 }
 
+void ctdb_track_child(struct ctdb_context *ctdb, pid_t pid)
+{
+	char *process;
+
+	/* Only CTDB main daemon should track child processes */
+	if (getpid() != ctdb->ctdbd_pid) {
+		return;
+	}
+
+	process = talloc_asprintf(ctdb->child_processes, "process:%d", (int)pid);
+	trbt_insert32(ctdb->child_processes, pid, process);
+}
+
 /*
  * This function forks a child process and drops the realtime 
  * scheduler for the child process.
@@ -52,7 +65,6 @@ bool ctdb_is_child_process(void)
 pid_t ctdb_fork_no_free_ringbuffer(struct ctdb_context *ctdb)
 {
 	pid_t pid;
-	char *process;
 
 	pid = fork();
 	if (pid == -1) {
@@ -87,13 +99,7 @@ pid_t ctdb_fork_no_free_ringbuffer(struct ctdb_context *ctdb)
 		return 0;
 	}
 
-	if (getpid() != ctdb->ctdbd_pid) {
-		return pid;
-	}
-
-	process = talloc_asprintf(ctdb->child_processes, "process:%d", (int)pid);
-	trbt_insert32(ctdb->child_processes, pid, process);
-
+	ctdb_track_child(ctdb, pid);
 	return pid;
 }
 
diff --git a/ctdb/config.guess b/ctdb/config.guess
index 0aee604..b79252d 100644
--- a/ctdb/config.guess
+++ b/ctdb/config.guess
@@ -1,10 +1,8 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-#   2011, 2012, 2013 Free Software Foundation, Inc.
+#   Copyright 1992-2013 Free Software Foundation, Inc.
 
-timestamp='2012-12-30'
+timestamp='2013-06-10'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -52,9 +50,7 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
-2012, 2013 Free Software Foundation, Inc.
+Copyright 1992-2013 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -136,6 +132,27 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
 UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 
+case "${UNAME_SYSTEM}" in
+Linux|GNU|GNU/*)
+	# If the system lacks a compiler, then just pick glibc.
+	# We could probably try harder.
+	LIBC=gnu
+
+	eval $set_cc_for_build
+	cat <<-EOF > $dummy.c
+	#include <features.h>
+	#if defined(__UCLIBC__)
+	LIBC=uclibc
+	#elif defined(__dietlibc__)
+	LIBC=dietlibc
+	#else
+	LIBC=gnu
+	#endif
+	EOF
+	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
+	;;
+esac
+
 # Note: order is significant - the case branches are not exclusive.
 
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
@@ -857,21 +874,21 @@ EOF
 	exit ;;
     *:GNU:*:*)
 	# the GNU system
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
 	exit ;;
     *:GNU/*:*:*)
 	# other systems with GNU libc and userland
-	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
 	exit ;;
     i*86:Minix:*:*)
 	echo ${UNAME_MACHINE}-pc-minix
 	exit ;;
     aarch64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     aarch64_be:Linux:*:*)
 	UNAME_MACHINE=aarch64_be
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     alpha:Linux:*:*)
 	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
@@ -884,59 +901,54 @@ EOF
 	  EV68*) UNAME_MACHINE=alphaev68 ;;
 	esac
 	objdump --private-headers /bin/sh | grep -q ld.so.1
-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+	if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	exit ;;
+    arc:Linux:*:* | arceb:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     arm*:Linux:*:*)
 	eval $set_cc_for_build
 	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
 	    | grep -q __ARM_EABI__
 	then
-	    echo ${UNAME_MACHINE}-unknown-linux-gnu
+	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	else
 	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
 		| grep -q __ARM_PCS_VFP
 	    then
-		echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
 	    else
-		echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
+		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
 	    fi
 	fi
 	exit ;;
     avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     cris:Linux:*:*)
-	echo ${UNAME_MACHINE}-axis-linux-gnu
+	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
 	exit ;;
     crisv32:Linux:*:*)
-	echo ${UNAME_MACHINE}-axis-linux-gnu
+	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
 	exit ;;
     frv:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     hexagon:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     i*86:Linux:*:*)
-	LIBC=gnu
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#ifdef __dietlibc__
-	LIBC=dietlibc
-	#endif
-EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
-	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
 	exit ;;
     ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     mips:Linux:*:* | mips64:Linux:*:*)
 	eval $set_cc_for_build
@@ -955,54 +967,63 @@ EOF
 	#endif
 EOF
 	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
 	;;
+    or1k:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	exit ;;
     or32:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     padre:Linux:*:*)
-	echo sparc-unknown-linux-gnu
+	echo sparc-unknown-linux-${LIBC}
 	exit ;;
     parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-unknown-linux-gnu
+	echo hppa64-unknown-linux-${LIBC}
 	exit ;;
     parisc:Linux:*:* | hppa:Linux:*:*)
 	# Look for CPU level
 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
-	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
-	  *)    echo hppa-unknown-linux-gnu ;;
+	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
+	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
+	  *)    echo hppa-unknown-linux-${LIBC} ;;
 	esac
 	exit ;;
     ppc64:Linux:*:*)
-	echo powerpc64-unknown-linux-gnu
+	echo powerpc64-unknown-linux-${LIBC}
 	exit ;;
     ppc:Linux:*:*)
-	echo powerpc-unknown-linux-gnu
+	echo powerpc-unknown-linux-${LIBC}
+	exit ;;
+    ppc64le:Linux:*:*)
+	echo powerpc64le-unknown-linux-${LIBC}
+	exit ;;
+    ppcle:Linux:*:*)
+	echo powerpcle-unknown-linux-${LIBC}
 	exit ;;
     s390:Linux:*:* | s390x:Linux:*:*)
-	echo ${UNAME_MACHINE}-ibm-linux
+	echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
 	exit ;;
     sh64*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     tile*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     vax:Linux:*:*)
-	echo ${UNAME_MACHINE}-dec-linux-gnu
+	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
 	exit ;;
     x86_64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     xtensa*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
     i*86:DYNIX/ptx:4*:*)
 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
@@ -1235,19 +1256,21 @@ EOF
 	exit ;;
     *:Darwin:*:*)
 	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-	case $UNAME_PROCESSOR in
-	    i386)
-		eval $set_cc_for_build
-		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
-		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		      grep IS_64BIT_ARCH >/dev/null
-		  then
-		      UNAME_PROCESSOR="x86_64"
-		  fi
-		fi ;;
-	    unknown) UNAME_PROCESSOR=powerpc ;;
-	esac
+	eval $set_cc_for_build
+	if test "$UNAME_PROCESSOR" = unknown ; then
+	    UNAME_PROCESSOR=powerpc
+	fi
+	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+	    if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+		grep IS_64BIT_ARCH >/dev/null
+	    then
+		case $UNAME_PROCESSOR in
+		    i386) UNAME_PROCESSOR=x86_64 ;;
+		    powerpc) UNAME_PROCESSOR=powerpc64 ;;
+		esac
+	    fi
+	fi
 	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
 	exit ;;
     *:procnto*:*:* | *:QNX:[0123456789]*:*)
diff --git a/ctdb/config/ctdb.sysconfig b/ctdb/config/ctdb.sysconfig
index 35bf5f8..db34c07 100644
--- a/ctdb/config/ctdb.sysconfig
+++ b/ctdb/config/ctdb.sysconfig
@@ -1,336 +1,33 @@
-# Options to ctdbd. This is read by /etc/init.d/ctdb
-
-# You must specify the location of a shared lock file across all the
-# nodes for split brain prevention to work.
-# This must be on shared storage.
-# CTDB can operate without a reclock file, but this means that there is no
-# protection against a split brain.
-# It is strongly suggested to NOT run ctdb without a reclock file.
-CTDB_RECOVERY_LOCK="/some/place/on/shared/storage"
-
-# when doing IP takeover you also may specify what network interface
-# to use by default for the public addresses. Otherwise you must
-# specify an interface on each line of the public addresses file
-# there is no default
-# CTDB_PUBLIC_INTERFACE=eth0
+# Options to ctdbd, read by ctdbd_wrapper(1)
+#
+# See ctdbd.conf(5) for more information about CTDB configuration variables.
 
-# Should ctdb do IP takeover? If it should, then specify a file
-# containing the list of public IP addresses that ctdb will manage
-# Note that these IPs must be different from those in $NODES above
-# there is no default.
-# The syntax is one line per public address of the form :
-#   <ipaddress>/<netmask> <interface>
-# Example: 10.1.1.1/24 eth0
+# Shared recovery lock file to avoid split brain.  No default.
 #
-# CTDB_PUBLIC_ADDRESSES=/etc/ctdb/public_addresses
+# Do NOT run CTDB without a recovery lock file unless you know exactly
+# what you are doing.
+CTDB_RECOVERY_LOCK=/some/place/on/shared/storage
 
-# Should CTDB present the cluster using a single public ip address to clients
-# and multiplex clients across all CONNECTED nodes ?
-# This is based on LVS 
-# When this is enabled, the entire cluster will present one single ip address
-# which clients will connect to.
-# CTDB_LVS_PUBLIC_IP=10.1.1.1
+# List of nodes in the cluster.  Default is below.
+# CTDB_NODES=/etc/ctdb/nodes
 
+# List of public addresses for providing NAS services.  No default.
+CTDB_PUBLIC_ADDRESSES=/etc/ctdb/public_addresses
 
-# should ctdb manage starting/stopping the Samba service for you?
-# default is to not manage Samba
+# What services should CTDB manage?  Default is none.
 # CTDB_MANAGES_SAMBA=yes
-
-# If there are very many shares it may not be feasible to check that all
-# of them are available during each monitoring interval.
-# In that case this check can be disabled
-# CTDB_SAMBA_SKIP_SHARE_CHECK=yes
-# CTDB_NFS_SKIP_SHARE_CHECK=yes
-
-# specify which ports we should check that there is a daemon listening to
-# by default we use testparm and look in smb.conf to figure out.
-# CTDB_SAMBA_CHECK_PORTS="445"
-
-# should ctdb manage starting/stopping Winbind service?
-# if left comented out then it will be autodetected based on smb.conf
 # CTDB_MANAGES_WINBIND=yes
-
-# should ctdb manage starting/stopping the VSFTPD service
-# CTDB_MANAGES_VSFTPD=yes
-
-# should ctdb manage starting/stopping the ISCSI service
-# CTDB_MANAGES_ISCSI=yes
-
-# should ctdb manage starting/stopping the NFS service
 # CTDB_MANAGES_NFS=yes
 
-# should ctdb manage starting/stopping the Apache web server httpd?
-# CTDB_MANAGES_HTTPD
-
-# The init style (redhat/suse/debian...) is usually auto-detected.
-# The names of init scripts of services managed by CTDB are set
-# based on the detected init style. You can override the init style
-# auto-detection here to explicitly use a scheme. This might be
-# useful when you have installed a packages (for instance samba
-# packages) with a different init script layout.
-# There is no default.
-# CTDB_INIT_STYLE=redhat
-
-# The following are specific Samba init scripts / services that you
-# can override from auto-detection.
-# There are no defaults.
-# CTDB_SERVICE_SMB=smb
-# CTDB_SERVICE_NMB=nmb
-# CTDB_SERVICE_WINBIND=winbind
-
-# you may wish to raise the file descriptor limit for ctdb
-# use a ulimit command here. ctdb needs one file descriptor per
-# connected client (ie. one per connected client in Samba)
-#  ulimit -n 10000
-


-- 
Samba Shared Repository


More information about the samba-cvs mailing list