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

FreeBSD Manual Pages

  
 
  

home | help
transformdb(1)		    General Commands Manual		transformdb(1)

NAME
       transformdb - The Freeze	database migration tool.

SYNOPSIS
       transformdb -o FILE [-i]	[slice-options]	[type-options]

	      Generates	descriptors in FILE for	a database.

       transformdb -o FILE [-i]	[slice-options]	DBENV

	      Generates	 descriptors in	FILE for all databases in the environ-
	      ment DBENV.

       transformdb [options] [slice-options] [type-options] DBENV DB NEWDBENV

	      Transform	the database DB	in the environment DBENV.  A  database
	      of the same name is created in the environment NEWDBENV.

       transformdb [options] [slice-options] DBENV NEWDBENV

	      Transform	 all databases from the	environment DBENV into the en-
	      vironment	NEWDBENV.

DESCRIPTION
       The FreezeScript	tool transformdb migrates  a  database	created	 by  a
       Freeze  map  or	evictor.  It  accomplishes this	by comparing the "old"
       Slice definitions (i.e.,	the ones that describe the current contents of
       the database) with the "new" Slice  definitions,	 and  making  whatever
       modifications  are necessary to ensure that the transformed database is
       compatible with the new definitions.  Full documentation	for  transfor-
       mdb is available	online at:
       https://doc.zeroc.com/ice/3.6/ice-services/freezescript/migrating-a-
       freeze-database/using-transformdb

OPTIONS
       -h, --help
	      Displays a help message.

       -v, --version
	      Displays the Ice version.

       -DNAME
	      Defines the preprocessor symbol NAME.

       -DNAME=DEF
	      Defines the preprocessor symbol NAME with	the value DEF.

       -UNAME
	      Undefines	the preprocessor symbol	NAME.

       -IDIR
	      Add  the	directory  DIR	to the search path for #include	direc-
	      tives.

       -E
	      Print the	preprocessor output on stdout.

       --output-dir DIR
	      Place the	generated files	into directory DIR.

       -d, --debug
	      Print debug information  showing	the  operation	of  the	 Slice
	      parser.

       --ice
	      Permit  use of the normally reserved prefix Ice for identifiers.
	      Use this option only when	compiling the source code for the  Ice
	      run time.

       --underscore
	      Permit use of underscores	in Slice identifiers.

       --old SLICE

       --new SLICE
	      Loads  the  old  or  new Slice definitions contained in the file
	      SLICE. These options may be specified multiple times if  several
	      files  must be loaded.  However, it is the user's	responsibility
	      to ensure	that duplicate definitions do not occur	(which is pos-
	      sible when two files are loaded  that  share  a  common  include
	      file).  One  strategy  for  avoiding duplicate definitions is to
	      load a single Slice file that contains only #include  statements
	      for each of the Slice files to be	loaded.	No duplication is pos-
	      sible in this case if the	included files use include guards cor-
	      rectly.

       --include-old DIR

       --include-new DIR
	      Adds  the	 directory DIR to the set of include paths for the old
	      or new Slice definitions.

       --key TYPE[,TYPE]

       --value TYPE[,TYPE]
	      Specifies	the Slice type(s) of the database key  and  value.  If
	      the  type	does not change, then the type only needs to be	speci-
	      fied once. Otherwise, the	old type is specified first,  followed
	      by  a  comma  and	 the  new  type. For example, the option --key
	      int,string indicates that	the database key is migrating from int
	      to string. On the	other hand, the	option --key int,int indicates
	      that the key type	does not change, and could be given simply  as
	      --key  int.  Type	changes	are restricted to those	allowed	by the
	      compatibility rules, but custom  migration  provides  additional
	      flexibility.

       -e
	      Indicates	that a Freeze evictor database is being	migrated. As a
	      convenience, this	option automatically sets the database key and
	      value  types  to	those  appropriate for the Freeze evictor, and
	      therefore	the --key  and	--value	 options  are  not  necessary.
	      Specifically,  the  key  type  of	 a  Freeze evictor database is
	      Ice::Identity, and the value type	is  Freeze::ObjectRecord.  The
	      latter  is  defined in the Slice file Freeze/EvictorStorage.ice;
	      however, this file does not need to be loaded into your old  and
	      new Slice	definitions.

       -i
	      Requests	that  transformdb ignore type changes that violate the
	      compatibility rules. If this option is not specified,  transfor-
	      mdb  fails immediately if	such a violation occurs. With this op-
	      tion, a warning is displayed but transformdb continues  the  re-
	      quested  action.	The  -i	option can be specified	in analysis or
	      automatic	migration modes.

       -p     During migration,	this option requests  that  transformdb	 purge
	      object  instances	whose type is no longer	found in the new Slice
	      definitions.

       -c
	      Use catastrophic recovery	on the old Berkeley DB database	 envi-
	      ronment prior to migration.

       -w
	      Suppress duplicate warnings during migration. This option	is es-
	      pecially useful to minimize diagnostic messages when transformdb
	      would  otherwise	emit the same warning many times, such as when
	      it detects the same issue	in every record	of a database.

SEE ALSO
       dumpdb(1)

								transformdb(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=transformdb&sektion=1&manpath=FreeBSD+Ports+15.0.quarterly>

home | help