-2.02.37-cvs (2008-04-29)
+2.02.37-cvs (2008-06-06)
-Version 2.02.38 -
-=================================
- In script-processing mode, stop if any command fails.
- Warn if command exits with non-zero status code without a prior log_error.
- Check lv_count in vg_validate.
- Add --prefixes to reporting tools for field name prefix output format.
-
Version 2.02.37 - 6th June 2008
===============================
Make clvmd-cman use a hash rather than an array for node updown info.
static int _mirror_in_sync = 0;
static int _dmeventd_monitor = DEFAULT_DMEVENTD_MONITOR;
static int _ignore_suspended_devices = 0;
-static int _error_message_produced = 0;
static lvm2_log_fn_t _lvm2_log_fn = NULL;
_indent = indent;
}
-void init_error_message_produced(int error_message_produced)
-{
- _error_message_produced = error_message_produced;
-}
-
-int error_message_produced(void)
-{
- return _error_message_produced;
-}
-
int test_mode()
{
return _test;
if (_log_suppress == 2)
return;
- if (level <= _LOG_ERR)
- _error_message_produced = 1;
-
trformat = _(format);
if (_lvm2_log_fn) {
void init_mirror_in_sync(int in_sync);
void init_dmeventd_monitor(int reg);
void init_ignore_suspended_devices(int ignore);
-void init_error_message_produced(int error_message_produced);
void set_cmd_name(const char *cmd_name);
int security_level(void);
int mirror_in_sync(void);
int ignore_suspended_devices(void);
-int error_message_produced(void);
#define DMEVENTD_MONITOR_IGNORE -1
int dmeventd_monitor_mode(void);
if ((lv_count = (uint32_t) list_size(&vg->lvs)) !=
vg->lv_count + 2 * vg->snapshot_count) {
- log_error("Internal error: #internal LVs (%u) != #LVs (%"
+ log_debug("Internal error: #internal LVs (%u) != #LVs (%"
PRIu32 ") + 2 * #snapshots (%" PRIu32 ") in VG %s",
list_size(&vg->lvs), vg->lv_count,
vg->snapshot_count, vg->name);
- r = 0;
}
list_iterate_items(lvl, &vg->lvs) {
if (headings)
report_flags |= DM_REPORT_OUTPUT_HEADINGS;
- if (field_prefixes)
- report_flags |= DM_REPORT_OUTPUT_FIELD_NAME_PREFIX;
-
rh = dm_report_init(report_type, _report_types, _fields, format,
separator, report_flags, keys, cmd);
- if (field_prefixes)
- dm_report_set_output_field_name_prefix(rh, "lvm2_");
-
return rh;
}
"\t[-o|--options [+]Field[,Field]]\n"
"\t[-O|--sort [+|-]key1[,[+|-]key2[,...]]]\n"
"\t[-P|--partial] " "\n"
- "\t[--prefixes]\n"
"\t[--segments]\n"
"\t[--separator Separator]\n"
"\t[--trustcache]\n"
"\t[LogicalVolume[Path] [LogicalVolume[Path]...]]\n",
aligned_ARG, all_ARG, ignorelockingfailure_ARG, noheadings_ARG,
- nolocking_ARG, nosuffix_ARG, options_ARG, partial_ARG, prefixes_ARG,
+ nolocking_ARG, nosuffix_ARG, options_ARG, partial_ARG,
segments_ARG, separator_ARG, sort_ARG, trustcache_ARG, unbuffered_ARG,
units_ARG)
"\t[-o|--options [+]Field[,Field]]\n"
"\t[-O|--sort [+|-]key1[,[+|-]key2[,...]]]\n"
"\t[-P|--partial] " "\n"
- "\t[--prefixes]\n"
"\t[--segments]\n"
"\t[--separator Separator]\n"
"\t[--trustcache]\n"
"\t[PhysicalVolume [PhysicalVolume...]]\n",
aligned_ARG, all_ARG, ignorelockingfailure_ARG, noheadings_ARG,
- nolocking_ARG, nosuffix_ARG, options_ARG, partial_ARG, prefixes_ARG,
+ nolocking_ARG, nosuffix_ARG, options_ARG, partial_ARG,
segments_ARG, separator_ARG, sort_ARG, trustcache_ARG, unbuffered_ARG,
units_ARG)
"\t[-o|--options [+]Field[,Field]]\n"
"\t[-O|--sort [+|-]key1[,[+|-]key2[,...]]]\n"
"\t[-P|--partial] " "\n"
- "\t[--prefixes]\n"
"\t[--separator Separator]\n"
"\t[--trustcache]\n"
"\t[--unbuffered]\n"
"\t[VolumeGroupName [VolumeGroupName...]]\n",
aligned_ARG, all_ARG, ignorelockingfailure_ARG, noheadings_ARG,
- nolocking_ARG, nosuffix_ARG, options_ARG, partial_ARG, prefixes_ARG,
+ nolocking_ARG, nosuffix_ARG, options_ARG, partial_ARG,
separator_ARG, sort_ARG, trustcache_ARG, unbuffered_ARG, units_ARG)
xx(vgscan,
log_error("No such command '%s'. Try 'help'.",
argv[0]);
- if ((ret != ECMD_PROCESSED) && !error_message_produced()) {
- log_debug("Internal error: Failed command did not use log_error");
- log_error("Command failed with status code %d.", ret);
- }
_write_history();
}
int ret = 0;
int locking_type;
- init_error_message_produced(0);
-
/* each command should start out with sigint flag cleared */
sigint_clear();
continue;
if (!strcmp(argv[0], "quit") || !strcmp(argv[0], "exit"))
break;
- ret = lvm_run_command(cmd, argc, argv);
- if (ret != ECMD_PROCESSED) {
- if (!error_message_produced()) {
- log_debug("Internal error: Failed command did not use log_error");
- log_error("Command failed with status code %d.", ret);
- }
- break;
- }
+ lvm_run_command(cmd, argc, argv);
}
if (fclose(script))
if (ret == ENO_SUCH_CMD)
log_error("No such command. Try 'help'.");
- if ((ret != ECMD_PROCESSED) && !error_message_produced()) {
- log_debug("Internal error: Failed command did not use log_error");
- log_error("Command failed with status code %d.", ret);
- }
-
out:
lvm_fin(cmd);
if (ret == ECMD_PROCESSED)