public inbox for lvm2-cvs@sourceware.org
help / color / mirror / Atom feed
* LVM2/lib format_text/archiver.c metadata/metad ...
@ 2011-02-21 12:11 prajnoha
  0 siblings, 0 replies; 2+ messages in thread
From: prajnoha @ 2011-02-21 12:11 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	prajnoha@sourceware.org	2011-02-21 12:10:59

Modified files:
	lib/format_text: archiver.c 
	lib/metadata   : metadata.c metadata.h 

Log message:
	Add vg_set_fid function to change VG format instance.
	
	This function also sets a reference to a new VG format instance for all PVs
	that are part of the VG so the PV-VG interconnection is consistent after the
	change.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/format_text/archiver.c.diff?cvsroot=lvm2&r1=1.39&r2=1.40
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/metadata/metadata.c.diff?cvsroot=lvm2&r1=1.426&r2=1.427
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/metadata/metadata.h.diff?cvsroot=lvm2&r1=1.231&r2=1.232

--- LVM2/lib/format_text/archiver.c	2011/02/21 12:07:03	1.39
+++ LVM2/lib/format_text/archiver.c	2011/02/21 12:10:58	1.40
@@ -308,10 +308,11 @@
 	fic.type = FMT_INSTANCE_VG | FMT_INSTANCE_MDAS | FMT_INSTANCE_AUX_MDAS;
 	fic.context.vg_ref.vg_name = vg->name;
 	fic.context.vg_ref.vg_id = NULL;
-	if (!(vg->fid = cmd->fmt->ops->create_instance(cmd->fmt, &fic))) {
+	if (!(fid = cmd->fmt->ops->create_instance(cmd->fmt, &fic))) {
 		log_error("Failed to allocate format instance");
 		return 0;
 	}
+	vg_set_fid(vg, fid);
 
 	/*
 	 * Setting vg->old_name to a blank value will explicitly
--- LVM2/lib/metadata/metadata.c	2011/02/21 12:07:03	1.426
+++ LVM2/lib/metadata/metadata.c	2011/02/21 12:10:58	1.427
@@ -3931,6 +3931,16 @@
 	return FAILED_EXIST;
 }
 
+void vg_set_fid(struct volume_group *vg,
+		 struct format_instance *fid)
+{
+	struct pv_list *pvl;
+
+	vg->fid = fid;
+	dm_list_iterate_items(pvl, &vg->pvs)
+		pvl->pv->fid = fid;
+}
+
 static int _convert_key_to_string(const char *key, size_t key_len,
 				  unsigned sub_key, char *buf, size_t buf_len)
 {
--- LVM2/lib/metadata/metadata.h	2011/02/21 12:05:50	1.231
+++ LVM2/lib/metadata/metadata.h	2011/02/21 12:10:59	1.232
@@ -190,6 +190,7 @@
 unsigned mda_is_ignored(struct metadata_area *mda);
 void mda_set_ignored(struct metadata_area *mda, unsigned ignored);
 unsigned mda_locns_match(struct metadata_area *mda1, struct metadata_area *mda2);
+void vg_set_fid(struct volume_group *vg, struct format_instance *fid);
 int fid_add_mda(struct format_instance *fid, struct metadata_area *mda,
 		const char *key, size_t key_len, const unsigned sub_key);
 int fid_add_mdas(struct format_instance *fid, struct dm_list *mdas,


^ permalink raw reply	[flat|nested] 2+ messages in thread

* LVM2/lib format_text/archiver.c metadata/metad ...
@ 2012-02-27 11:36 zkabelac
  0 siblings, 0 replies; 2+ messages in thread
From: zkabelac @ 2012-02-27 11:36 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	zkabelac@sourceware.org	2012-02-27 11:36:00

Modified files:
	lib/format_text: archiver.c 
	lib/metadata   : metadata.c 

Log message:
	Add stack traces for lock_vol failures
	
	Adding at least stack traces with some FIXMEs for cases,
	where we might want to do something cleaver - maybe fail command
	or give user hints something is not going well ?
	
	For remote_backup is stack probably 'good' enough for now.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/format_text/archiver.c.diff?cvsroot=lvm2&r1=1.50&r2=1.51
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/metadata/metadata.c.diff?cvsroot=lvm2&r1=1.487&r2=1.488

--- LVM2/lib/format_text/archiver.c	2012/02/12 23:01:19	1.50
+++ LVM2/lib/format_text/archiver.c	2012/02/27 11:35:59	1.51
@@ -244,7 +244,8 @@
 int backup(struct volume_group *vg)
 {
 	if (vg_is_clustered(vg))
-		remote_backup_metadata(vg);
+		if (!remote_backup_metadata(vg))
+			stack;
 
 	return backup_locally(vg);
 }
--- LVM2/lib/metadata/metadata.c	2012/02/27 09:51:31	1.487
+++ LVM2/lib/metadata/metadata.c	2012/02/27 11:36:00	1.488
@@ -2708,7 +2708,8 @@
 
 	if (cache_updated) {
 		/* Instruct remote nodes to upgrade cached metadata. */
-		remote_commit_cached_metadata(vg);
+		if (!remote_commit_cached_metadata(vg))
+			stack; // FIXME: What should we do?
 		/*
 		 * We need to clear old_name after a successful commit.
 		 * The volume_group structure could be reused later.
@@ -2741,7 +2742,8 @@
 		log_error("Attempt to drop cached metadata failed "
 			  "after reverted update for VG %s.", vg->name);
 
-	remote_revert_cached_metadata(vg);
+	if (!remote_revert_cached_metadata(vg))
+		stack; // FIXME: What should we do?
 }
 
 struct _vg_read_orphan_baton {


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-02-27 11:36 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-02-21 12:11 LVM2/lib format_text/archiver.c metadata/metad prajnoha
2012-02-27 11:36 zkabelac

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).