1lsm_volume_replicate(3)   Libstoragemgmt C API Manual  lsm_volume_replicate(3)
2
3
4

NAME

6       lsm_volume_replicate - Replicates a volume
7

SYNOPSIS

9       int lsm_volume_replicate (lsm_connect *conn, lsm_pool *pool, lsm_repli‐
10       cation_type  rep_type,  lsm_volume  *volume_src,  const   char   *name,
11       lsm_volume **new_replicant, char **job, lsm_flag flags);
12

ARGUMENTS

14       conn        Valid lsm_connect pointer.
15
16       pool        Pointer  of  lsm_pool where the new replicate target volume
17                   stored in.  If NULL, target volume will be  reside  in  the
18                   same pool of source volume.
19
20       rep_type    lsm_replication_type. Valid values are: * LSM_VOLUME_REPLI‐
21                   CATE_CLONE
22                      Point in time read writeable space efficient copy of
23                      data. Also know as read writeable snapshot.  *  LSM_VOL‐
24                   UME_REPLICATE_COPY
25                      Full  bitwise copy of the data (occupies full space).  *
26                   LSM_VOLUME_REPLICATE_MIRROR_ASYNC
27                      I/O will be blocked until  I/O  reached  source  storage
28                   systems.
29                      The source storage system will use copy the changes data
30                   to
31                      target system in a predefined interval. There will be  a
32                   small
33                      data  differences between source and target.  * LSM_VOL‐
34                   UME_REPLICATE_MIRROR_SYNC
35                      I/O will be blocked until I/O reached both source and
36                      target storage systems. There will be no data difference
37                      between source and target storage systems.
38
39       volume_src  Pointer of replication source lsm_volume.
40
41       name        String. Human recognizable name, might be  altered  or  ig‐
42                   nored by certain storage system.
43
44       new_replicant
45                   Output  pointer  of new replication target lsm_volume. Will
46                   be NULL if storage system support  asynchronous  action  on
47                   this.   Memory  must  be  freed  with  a  call  to lsm_vol‐
48                   ume_record_free.
49
50       job         Output pointer of string. If storage system  support  asyn‐
51                   chronous action on this, a job will be created and could be
52                   tracked via lsm_job_status_volume_get. NULL if storage sys‐
53                   tem does not support asynchronous action on this.
54
55       flags       Reserved for future use, must be LSM_CLIENT_FLAG_RSVD.
56

VERSION

58       1.0
59

DESCRIPTION

61       Replicates  a  volume.   To  delete  the  new target volume, please use
62       lsm_volume_delete.  If any volume is the replication source, it is only
63       deletable when lsm_volume_child_dependency returns 0.
64

CAPABILITY

66       LSM_CAP_VOLUME_REPLICATE   LSM_CAP_VOLUME_REPLICATE_CLONE  LSM_CAP_VOL‐
67       UME_REPLICATE_COPY  LSM_CAP_VOLUME_REPLICATE_MIRROR_ASYNC  LSM_CAP_VOL‐
68       UME_REPLICATE_MIRROR_SYNC
69

RETURN

71       Error code as enumerated by 'lsm_error_number'.
72           * LSM_ERR_OK
73               On success.
74           * LSM_ERR_JOB_STARTED
75               A job is started. Please check the 'job' output pointer.
76           * LSM_ERR_INVALID_ARGUMENT
77               When any argument is NULL or not a valid lsm_connect pointer
78               or invalid flags or invalid replication type.
79           * LSM_ERR_NOT_FOUND_VOLUME
80               When volume not found.
81           * LSM_ERR_NOT_FOUND_POOL
82               When pool not found.
83           * LSM_ERR_NOT_ENOUGH_SPACE
84               Pool does not have enough space.
85           * LSM_ERR_POOL_NOT_READY
86               Pool is not ready.
87           * LSM_ERR_NO_SUPPORT
88               Not supported.
89
90
91
92April 2023                   lsm_volume_replicate      lsm_volume_replicate(3)
Impressum