[SCM] CTDB repository - branch master updated - ctdb-1.10-196-gce6409d

Michael Adam obnox at samba.org
Wed May 4 06:40:31 MDT 2011


The branch, master has been updated
       via  ce6409dc7d059701f0fe4b57e7c05c38c66629c5 (commit)
       via  ffbff1affed8301831387e23b4f8f824d9f78e20 (commit)
       via  991ea66e5ed0eb7ab256dc8e3118dc78462d4752 (commit)
       via  d91e80c698a7706460e9ee74bd4f5a9ab0a7b9b1 (commit)
       via  992baa4215bfc1b29fd153ccb7c42bb0cb66fa4f (commit)
       via  2ed3603274cd38dde4ae98eef653e9a9de631eb5 (commit)
       via  efcf2815711cd5371633614fb91273bd0a786da0 (commit)
       via  2b5cb0841fd813cd54be170c305a828885e0f038 (commit)
      from  6a74515f0a1e24d97cee3ba05d89133aac7ad2b7 (commit)

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


- Log -----------------------------------------------------------------
commit ce6409dc7d059701f0fe4b57e7c05c38c66629c5
Author: Michael Adam <obnox at samba.org>
Date:   Wed May 4 14:28:26 2011 +0200

    packaging: add ltdbtool and its manpage to the RPM

commit ffbff1affed8301831387e23b4f8f824d9f78e20
Author: Michael Adam <obnox at samba.org>
Date:   Wed May 4 14:25:48 2011 +0200

    install the ltdbtool manpage with "make install"

commit 991ea66e5ed0eb7ab256dc8e3118dc78462d4752
Author: Michael Adam <obnox at samba.org>
Date:   Wed May 4 13:44:59 2011 +0200

    install ltdbtool with "make install"

commit d91e80c698a7706460e9ee74bd4f5a9ab0a7b9b1
Author: Michael Adam <obnox at samba.org>
Date:   Wed May 4 13:44:10 2011 +0200

    build "ltdbtool" in "make all"

commit 992baa4215bfc1b29fd153ccb7c42bb0cb66fa4f
Author: Gregor Beck <gbeck at sernet.de>
Date:   Wed May 4 14:17:04 2011 +0200

    ltdbtool: add manpage html + roff
    
    Signed-off-by: Michael Adam <obnox at samba.org>

commit 2ed3603274cd38dde4ae98eef653e9a9de631eb5
Author: Gregor Beck <gbeck at sernet.de>
Date:   Wed May 4 14:14:54 2011 +0200

    ltdbtool: add manpage
    
    Signed-off-by: Michael Adam <obnox at samba.org>

commit efcf2815711cd5371633614fb91273bd0a786da0
Author: Gregor Beck <gbeck at sernet.de>
Date:   Thu Apr 14 12:51:59 2011 +0200

    add ltdbtool - a standalone ltdb tool
    
    This this is a tool to handle (dump and convert) ctdb's local tdb
    copies (ltdbs) without connecting to a ctdb daemon.
    
    It can be used to
    
    * dump the contents of a ltdb, printing
      the ctdb record header information
    
    * dump a non-clustered tdb database (like tdbdump)
    
    * convert between an ltdb and a non-clustered tdb
      (adding or removing ctdb headers)
    
    * convert between 64 and 32 bit ltdbs
      (the ctdb record headers differ by 4 bytes of padding)
    
    usage: bin/ltdbtool dump [-p] [-s{0|32|64}] <idb>
           bin/ltdbtool convert [-s{0|32|64}] [-o{0|32|64}] <idb> <odb>
    
    Pair-Programmed-With: Michael Adam <obnox at samba.org>

commit 2b5cb0841fd813cd54be170c305a828885e0f038
Author: Gregor Beck <gbeck at sernet.de>
Date:   Thu Apr 14 12:55:57 2011 +0200

    ctdb catdb: fix escaping of '"' and '\'
    
    Signed-off-by: Michael Adam <obnox at samba.org>

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

Summary of changes:
 Makefile.in                |   11 +-
 client/ctdb_client.c       |    2 +-
 doc/ltdbtool.1             |  258 ++++++++++++++++++++++++++++++
 doc/ltdbtool.1.html        |   84 ++++++++++
 doc/ltdbtool.1.xml         |  230 +++++++++++++++++++++++++++
 packaging/RPM/ctdb.spec.in |    2 +
 tools/ltdbtool.c           |  377 ++++++++++++++++++++++++++++++++++++++++++++
 7 files changed, 961 insertions(+), 3 deletions(-)
 create mode 100644 doc/ltdbtool.1
 create mode 100644 doc/ltdbtool.1.html
 create mode 100644 doc/ltdbtool.1.xml
 create mode 100644 tools/ltdbtool.c


Changeset truncated at 500 lines:

diff --git a/Makefile.in b/Makefile.in
index 6bbf616..aec64e1 100755
--- a/Makefile.in
+++ b/Makefile.in
@@ -72,7 +72,7 @@ TEST_BINS=tests/bin/ctdb_bench tests/bin/ctdb_fetch tests/bin/ctdb_fetch_one \
 	tests/bin/ctdb_traverse tests/bin/rb_test tests/bin/ctdb_transaction \
 	@INFINIBAND_BINS@
 
-BINS = bin/ctdb @CTDB_SCSI_IO@ bin/smnotify bin/ping_pong
+BINS = bin/ctdb @CTDB_SCSI_IO@ bin/smnotify bin/ping_pong bin/ltdbtool
 SBINS = bin/ctdbd
 
 DIRS = lib bin tests/bin
@@ -123,6 +123,10 @@ bin/ctdb: $(CTDB_CLIENT_OBJ) tools/ctdb.o tools/ctdb_vacuum.o libctdb/libctdb.a
 	@echo Linking $@
 	@$(CC) $(CFLAGS) -o $@ tools/ctdb.o tools/ctdb_vacuum.o $(CTDB_CLIENT_OBJ) $(LIB_FLAGS) libctdb/libctdb.a
 
+bin/ltdbtool: tools/ltdbtool.o @TDB_OBJ@
+	@echo Linking $@
+	@$(CC) $(CFLAGS) -o $@ $+
+
 bin/smnotify: utils/smnotify/gen_xdr.o utils/smnotify/gen_smnotify.o utils/smnotify/smnotify.o $(POPT_OBJ)
 	@echo Linking $@
 	@$(CC) $(CFLAGS) -o $@ utils/smnotify/smnotify.o utils/smnotify/gen_xdr.o utils/smnotify/gen_smnotify.o $(POPT_OBJ) $(LIB_FLAGS)
@@ -198,7 +202,8 @@ tests/bin/ibwrapper_test: $(CTDB_CLIENT_OBJ) ib/ibwrapper_test.o
 
 doc: doc/ctdb.1 doc/ctdb.1.html \
 	doc/ctdbd.1 doc/ctdbd.1.html \
-	doc/onnode.1 doc/onnode.1.html
+	doc/onnode.1 doc/onnode.1.html \
+	doc/ltdbtool.1 doc/ltdbtool.1.html
 
 clean:
 	rm -f *.o */*.o */*.a */*/*.o */*~
@@ -224,6 +229,7 @@ install: all
 	${INSTALLCMD} -m 755 bin/ctdbd $(DESTDIR)$(sbindir)
 	${INSTALLCMD} -m 755 bin/smnotify $(DESTDIR)$(bindir)
 	$(INSTALLCMD) -m 755 bin/ping_pong $(DESTDIR)$(bindir)
+	$(INSTALLCMD) -m 755 bin/ltdbtool $(DESTDIR)$(bindir)
 	$(INSTALLCMD) -m 755 libctdb/libctdb.a $(DESTDIR)$(libdir)
 	${INSTALLCMD} -m 644 include/ctdb.h $(DESTDIR)$(includedir)
 	${INSTALLCMD} -m 644 include/ctdb_client.h $(DESTDIR)$(includedir)
@@ -257,6 +263,7 @@ install: all
 	if [ -f doc/ctdb.1 ];then ${INSTALLCMD} -m 644 doc/ctdb.1 $(DESTDIR)$(mandir)/man1; fi
 	if [ -f doc/ctdbd.1 ];then ${INSTALLCMD} -m 644 doc/ctdbd.1 $(DESTDIR)$(mandir)/man1; fi
 	if [ -f doc/onnode.1 ];then ${INSTALLCMD} -m 644 doc/onnode.1 $(DESTDIR)$(mandir)/man1; fi
+	if [ -f doc/ltdbtool.1 ]; then ${INSTALLCMD} -m 644 doc/ltdbtool.1 $(DESTDIR)$(mandir)/man1; fi
 	if [ ! -f $(DESTDIR)$(etcdir)/ctdb/notify.sh ];then ${INSTALLCMD} -m 755 config/notify.sh $(DESTDIR)$(etcdir)/ctdb; fi
 	if [ ! -f $(DESTDIR)$(etcdir)/ctdb/ctdb-crash-cleanup.sh ];then ${INSTALLCMD} -m 755 config/ctdb-crash-cleanup.sh $(DESTDIR)$(etcdir)/ctdb; fi
 
diff --git a/client/ctdb_client.c b/client/ctdb_client.c
index a43710f..5e06604 100644
--- a/client/ctdb_client.c
+++ b/client/ctdb_client.c
@@ -1876,7 +1876,7 @@ int ctdb_traverse(struct ctdb_db_context *ctdb_db, ctdb_traverse_func fn, void *
 	return state.count;
 }
 
-#define ISASCII(x) ((x>31)&&(x<128))
+#define ISASCII(x) (isprint(x) && !strchr("\"\\", (x)))
 /*
   called on each key during a catdb
  */
diff --git a/doc/ltdbtool.1 b/doc/ltdbtool.1
new file mode 100644
index 0000000..5c514d2
--- /dev/null
+++ b/doc/ltdbtool.1
@@ -0,0 +1,258 @@
+'\" t
+.\"     Title: ltdbtool
+.\"    Author: [FIXME: author] [see http://docbook.sf.net/el/author]
+.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
+.\"      Date: 05/04/2011
+.\"    Manual:  
+.\"    Source:  
+.\"  Language: English
+.\"
+.TH "LTDBTOOL" "1" "05/04/2011" "" ""
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el       .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+ltdbtool \- handle ctdb\*(Aqs local tdb copies
+.SH "SYNOPSIS"
+.HP \w'\fBltdbtool\ [OPTIONS]\ COMMAND\fR\ 'u
+\fBltdbtool [OPTIONS] COMMAND\fR
+.SH "DESCRIPTION"
+.PP
+ltdbtool is a utility to cope with ctdb\*(Aqs local tdb copies (LTDBs) without connecting to a ctdb daemon\&.
+.PP
+It can be used to
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+dump the contents of a LTDB, optionally printing the ctdb record header information,
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+convert between an LTDB and a non\-clustered tdb by adding or removing ctdb headers and
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+convert between 64 and 32 bit LTDBs where the ctdb record headers differ by 4 bytes of padding\&.
+.RE
+.sp
+.SH "COMMANDS"
+.PP
+help
+.RS 4
+Print a help text\&.
+.RE
+.PP
+dump <IDB>
+.RS 4
+Dump the contents of a LTDB file to standard output in a human\-readable format\&.
+.RE
+.PP
+convert <IDB> <ODB>
+.RS 4
+Make a copy of a LTDB optionally adding or removing ctdb headers\&.
+.RE
+.SH "OPTIONS"
+.PP
+\-p
+.RS 4
+Dump with header information, similar to "ctdb catdb"\&.
+.RE
+.PP
+\-s {0|32|64}
+.RS 4
+Specify how to determine the ctdb record header size for the input database:
+.PP
+0
+.RS 4
+no ctdb header
+.RE
+.PP
+32
+.RS 4
+ctdb header size of a 32 bit system (20 bytes)
+.RE
+.PP
+64
+.RS 4
+ctdb header size of a 64 bit system (24 bytes)
+.RE
+.sp
+The default is 32 or 64 depending on the system architecture\&.
+.RE
+.PP
+\-o {0|32|64}
+.RS 4
+Specify how to determine the ctdb record header size for the output database, see \-s
+.RE
+.PP
+\-S <SIZE>
+.RS 4
+Explicitly specify the ctdb record header size of the input database in bytes\&.
+.RE
+.PP
+\-O <SIZE>
+.RS 4
+Explicitly specify the ctdb record header size for the output database in bytes\&.
+.RE
+.PP
+\-h
+.RS 4
+Print a help text\&.
+.RE
+.SH "EXAMPLES"
+.PP
+Print a local tdb in "tdbdump" style:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+      ltdbtool dump idmap2\&.tdb\&.0
+    
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+Print a local tdb with header information similar to "ctdb catdb":
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+      ltdbtool dump \-p idmap2\&.tdb\&.0
+    
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+Strip the ctdb headers from records:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+      ltdbtool convert \-o0 idmap2\&.tdb\&.0 idmap\&.tdb
+    
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+Strip 64 bit ctdb headers from records, running on i386:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+      ltdbtool convert \-s64 \-o0 idmap2\&.tdb\&.0 idmap\&.tdb
+    
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+Strip the ctdb headers from records by piping through tdbrestore:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+      ltdbtool dump idmap2\&.tdb\&.0 | tdbrestore idmap\&.tdb
+    
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+Convert a local tdb from a 64 bit system for usage on a 32 bit system:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+      ltdbtool convert \-s64 \-o32 idmap2\&.tdb\&.0 idmap2\&.tdb\&.1
+    
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+Add a default header:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+      ltdbtool convert \-s0 idmap\&.tdb idmap2\&.tdb\&.0
+    
+.fi
+.if n \{\
+.RE
+.\}
+.SH "SEE ALSO"
+.PP
+ctdbd(1), ctdb(1), tdbdump(1), tdbrestore(1),
+\m[blue]\fB\%http://ctdb.samba.org/\fR\m[]
+.SH "COPYRIGHT/LICENSE"
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+Copyright (C) Gregor Beck 2011
+Copyright (C) Michael Adam 2011
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 3 of the License, or (at
+your option) any later version\&.
+
+This program is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE\&.  See the GNU
+General Public License for more details\&.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, see http://www\&.gnu\&.org/licenses/\&.
+.fi
+.if n \{\
+.RE
+.\}
diff --git a/doc/ltdbtool.1.html b/doc/ltdbtool.1.html
new file mode 100644
index 0000000..2be8339
--- /dev/null
+++ b/doc/ltdbtool.1.html
@@ -0,0 +1,84 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>ltdbtool</title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" title="ltdbtool"><a name="ltdbtool.1"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>ltdbtool — handle ctdb's local tdb copies </p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">ltdbtool [OPTIONS] COMMAND</code> </p></div></div><div class="refsect1" title="DESCRIPTION"><a name="id417069"></a><h2>DESCRIPTION</h2><p>
+      ltdbtool is a utility to cope with ctdb's local tdb copies (LTDBs)
+      without connecting to a ctdb daemon.
+    </p><p>It can be used to
+    </p><div class="itemizedlist"><ul class="itemizedlist" type="disc" compact><li class="listitem"><p>
+	  dump the contents of a LTDB, optionally printing the ctdb
+	  record header information,
+	</p></li><li class="listitem"><p>
+	  convert between an LTDB and a non-clustered tdb
+	  by adding or removing ctdb headers and
+	</p></li><li class="listitem"><p>convert between 64 and 32 bit LTDBs where the ctdb record
+	headers differ by 4 bytes of padding.
+	</p></li></ul></div><p>
+    </p></div><div class="refsect1" title="COMMANDS"><a name="id417114"></a><h2>COMMANDS</h2><div class="variablelist"><dl><dt><span class="term">help</span></dt><dd><p>
+	    Print a help text.
+	  </p></dd><dt><span class="term">dump <IDB></span></dt><dd><p>
+	    Dump the contents of a LTDB file to standard output in a
+	    human-readable format.
+	  </p></dd><dt><span class="term">convert <IDB> <ODB></span></dt><dd><p>
+	    Make a copy of a LTDB optionally adding or removing ctdb headers.
+	  </p></dd></dl></div></div><div class="refsect1" title="OPTIONS"><a name="id417160"></a><h2>OPTIONS</h2><div class="variablelist"><dl><dt><span class="term">-p</span></dt><dd><p>
+	    Dump with header information, similar to "ctdb catdb".
+	  </p></dd><dt><span class="term">-s {0|32|64}</span></dt><dd><p>
+	    Specify how to determine the ctdb record header size
+	    for the input database:
+	    </p><div class="variablelist"><dl><dt><span class="term">0</span></dt><dd><p>no ctdb header</p></dd><dt><span class="term">32</span></dt><dd><p>ctdb header size of a 32 bit system (20 bytes)</p></dd><dt><span class="term">64</span></dt><dd><p>ctdb header size of a 64 bit system (24 bytes)</p></dd></dl></div><p>
+	    The default is 32 or 64 depending on the system architecture.
+	  </p></dd><dt><span class="term">-o {0|32|64}</span></dt><dd><p>
+	    Specify how to determine the ctdb record header size
+	    for the output database, see -s
+	  </p></dd><dt><span class="term">-S <SIZE></span></dt><dd><p>
+	    Explicitly specify the ctdb record header size of the input database in bytes.
+	  </p></dd><dt><span class="term">-O <SIZE></span></dt><dd><p>
+	    Explicitly specify the ctdb record header size for the output database in bytes.
+	  </p></dd><dt><span class="term">-h</span></dt><dd><p>
+            Print a help text.
+	  </p></dd></dl></div></div><div class="refsect1" title="EXAMPLES"><a name="id417288"></a><h2>EXAMPLES</h2><p>
+      Print a local tdb in "tdbdump" style:
+    </p><pre class="screen">
+      ltdbtool dump idmap2.tdb.0
+    </pre><p>
+      Print a local tdb with header information similar to "ctdb catdb":
+    </p><pre class="screen">
+      ltdbtool dump -p idmap2.tdb.0
+    </pre><p>
+      Strip the ctdb headers from records:
+    </p><pre class="screen">
+      ltdbtool convert -o0 idmap2.tdb.0 idmap.tdb
+    </pre><p>
+      Strip 64 bit ctdb headers from records, running on i386:
+    </p><pre class="screen">
+      ltdbtool convert -s64 -o0 idmap2.tdb.0 idmap.tdb
+    </pre><p>
+      Strip the ctdb headers from records by piping through tdbrestore:
+    </p><pre class="screen">
+      ltdbtool dump idmap2.tdb.0 | tdbrestore idmap.tdb
+    </pre><p>
+      Convert a local tdb from a 64 bit system for usage on a 32 bit system:
+    </p><pre class="screen">
+      ltdbtool convert -s64 -o32 idmap2.tdb.0 idmap2.tdb.1
+    </pre><p>
+      Add a default header:
+    </p><pre class="screen">
+      ltdbtool convert -s0 idmap.tdb idmap2.tdb.0
+    </pre></div><div class="refsect1" title="SEE ALSO"><a name="id417355"></a><h2>SEE ALSO</h2><p>
+      ctdbd(1), ctdb(1), tdbdump(1), tdbrestore(1),
+      <a class="ulink" href="http://ctdb.samba.org/" target="_top">http://ctdb.samba.org/</a>
+    </p></div><div class="refsect1" title="COPYRIGHT/LICENSE"><a name="id417368"></a><h2>COPYRIGHT/LICENSE</h2><div class="literallayout"><p><br>
+Copyright (C) Gregor Beck 2011<br>
+Copyright (C) Michael Adam 2011<br>
+<br>
+This program is free software; you can redistribute it and/or modify<br>
+it under the terms of the GNU General Public License as published by<br>
+the Free Software Foundation; either version 3 of the License, or (at<br>
+your option) any later version.<br>
+<br>
+This program is distributed in the hope that it will be useful, but<br>
+WITHOUT ANY WARRANTY; without even the implied warranty of<br>
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU<br>
+General Public License for more details.<br>
+<br>
+You should have received a copy of the GNU General Public License<br>
+along with this program; if not, see http://www.gnu.org/licenses/.<br>
+</p></div></div></div></body></html>
diff --git a/doc/ltdbtool.1.xml b/doc/ltdbtool.1.xml
new file mode 100644
index 0000000..a0379a6
--- /dev/null
+++ b/doc/ltdbtool.1.xml
@@ -0,0 +1,230 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
+<refentry id="ltdbtool.1">
+
+<refmeta>
+	<refentrytitle>ltdbtool</refentrytitle>
+	<manvolnum>1</manvolnum>
+	<refmiscinfo class="source"> </refmiscinfo>
+	<refmiscinfo class="manual"> </refmiscinfo>
+</refmeta>
+
+
+<refnamediv>
+	<refname>ltdbtool</refname>
+        <refpurpose>handle ctdb's local tdb copies </refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+	<cmdsynopsis>
+		<command>ltdbtool [OPTIONS] COMMAND</command>
+	</cmdsynopsis>
+</refsynopsisdiv>
+
+  <refsect1><title>DESCRIPTION</title>
+    <para>
+      ltdbtool is a utility to cope with ctdb's local tdb copies (LTDBs)
+      without connecting to a ctdb daemon.
+    </para>
+    <para>It can be used to
+    <itemizedlist spacing='compact'> <!-- mark='opencircle' -->
+      <listitem>
+	<para>
+	  dump the contents of a LTDB, optionally printing the ctdb
+	  record header information,
+	</para>
+      </listitem>
+      <listitem>
+	<para>
+	  convert between an LTDB and a non-clustered tdb
+	  by adding or removing ctdb headers and
+	</para>
+      </listitem>
+      <listitem>
+	<para>convert between 64 and 32 bit LTDBs where the ctdb record
+	headers differ by 4 bytes of padding.
+	</para>
+      </listitem>
+    </itemizedlist>
+    </para>
+  </refsect1>
+
+  <refsect1><title>COMMANDS</title>
+
+    <variablelist>
+      <varlistentry><term>help</term>
+        <listitem>
+          <para>
+	    Print a help text.
+	  </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry><term>dump <IDB></term>
+        <listitem>
+          <para>
+	    Dump the contents of a LTDB file to standard output in a
+	    human-readable format.
+	  </para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry><term>convert <IDB> <ODB></term>
+        <listitem>
+          <para>
+	    Make a copy of a LTDB optionally adding or removing ctdb headers.
+	  </para>
+        </listitem>
+      </varlistentry>


-- 
CTDB repository


More information about the samba-cvs mailing list