Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
CEPH-DENCODER(8)		     Ceph		      CEPH-DENCODER(8)

NAME
       ceph-dencoder - ceph encoder/decoder utility

SYNOPSIS
       ceph-dencoder [commands...]

DESCRIPTION
       ceph-dencoder is	a utility to encode, decode, and dump ceph data	struc-
       tures.  It is used for debugging	and for	testing	inter-version compati-
       bility.

       ceph-dencoder  takes a simple list of commands and performs them	in or-
       der.

COMMANDS
       version
	      Print the	version	string for the ceph-dencoder binary.

       import <file>
	      Read a binary blob of encoded data from the given	file.  It will
	      be placed	in an in-memory	buffer.

       export <file>
	      Write  the contents of the current in-memory buffer to the given
	      file.

       list_types
	      List the data types known	to this	build of ceph-dencoder.

       type <name>
	      Select the given type for	future encode or decode	operations.

       skip <bytes>
	      Seek <bytes> into	the imported file before reading  data	struc-
	      ture,  use  this with objects that have a	preamble/header	before
	      the object of interest.

       decode Decode the contents of the in-memory buffer into an instance  of
	      the previously selected type.  If	there is an error, report it.

       encode Encode  the contents of the in-memory instance of	the previously
	      selected type to the in-memory buffer.

       dump_json
	      Print a JSON-formatted description of the	in-memory object.

       count_tests
	      Print the	number of built-in test	instances  of  the  previously
	      selected type that ceph-dencoder is able to generate.

       select_test <n>
	      Select  the  given build-in test instance	as a the in-memory in-
	      stance of	the type.

       get_features
	      Print the	decimal	value of the feature  set  supported  by  this
	      version of ceph-dencoder.	 Each bit represents a feature.	 These
	      correspond to CEPH_FEATURE_*  defines  in	 src/include/ceph_fea-
	      tures.h.

       set_features <f>
	      Set  the	feature	bits provided to encode	to f.  This allows you
	      to encode	objects	such that they can be understood by  old  ver-
	      sions of the software (for those types that support it).

EXAMPLE
       Say  you	 want to examine an attribute on an object stored by ceph-osd.
       You can do this:

	  $ cd /mnt/osd.12/current/2.b_head
	  $ attr -l foo_bar_head_EFE6384B
	  Attribute "ceph.snapset" has a 31 byte value for foo_bar_head_EFE6384B
	  Attribute "ceph._" has a 195 byte value for foo_bar_head_EFE6384B
	  $ attr foo_bar_head_EFE6384B -g ceph._ -q > /tmp/a
	  $ ceph-dencoder type object_info_t import /tmp/a decode dump_json
	  { "oid": { "oid": "foo",
		"key": "bar",
		"snapid": -2,
		"hash":	4024842315,
		"max": 0},
	    "locator": { "pool": 2,
		"preferred": -1,
		"key": "bar"},
	    "category":	"",
	    "version": "9'1",
	    "prior_version": "0'0",
	    "last_reqid": "client.4116.0:1",
	    "size": 1681,
	    "mtime": "2012-02-21 08:58:23.666639",
	    "lost": 0,
	    "wrlock_by": "unknown.0.0:0",
	    "snaps": [],
	    "truncate_seq": 0,
	    "truncate_size": 0,
	    "watchers":	{}}

       Alternatively, perhaps you wish to dump an internal CephFS metadata ob-
       ject, you might do that like this:

	  $ rados -p metadata get mds_snaptable	mds_snaptable.bin
	  $ ceph-dencoder type SnapServer skip 8 import	mds_snaptable.bin decode dump_json
	  { "snapserver": { "last_snap": 1,
	     "pending_noop": [],
	     "snaps": [],
	     "need_to_purge": {},
	     "pending_create": [],
	     "pending_destroy":	[]}}

AVAILABILITY
       ceph-dencoder  is part of Ceph, a massively scalable, open-source, dis-
       tributed	storage	system.	Please refer  to  the  Ceph  documentation  at
       http://ceph.com/docs for	more information.

SEE ALSO
       ceph(8)

COPYRIGHT
       2010-2014,  Inktank Storage, Inc. and contributors. Licensed under Cre-
       ative Commons Attribution Share Alike 3.0 (CC-BY-SA-3.0)

dev				 Mar 01, 2021		      CEPH-DENCODER(8)

NAME | SYNOPSIS | DESCRIPTION | COMMANDS | EXAMPLE | AVAILABILITY | SEE ALSO | COPYRIGHT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=ceph-dencoder&sektion=8&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help