Print this page
NEX-2911 NDMP logging should use syslog and is too chatty
NEX-559 NDMP cannot backup/restore a file which spans multiple tapes
*** 1,7 ****
--- 1,8 ----
/*
* Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2013 Nexenta Systems, Inc. All rights reserved.
*/
/*
* BSD 3 Clause License
*
*** 38,47 ****
--- 39,49 ----
/* Copyright (c) 2007, The Storage Networking Industry Association. */
/* Copyright (c) 1996, 1997 PDC, Network Appliance. All Rights Reserved */
/* Copyright 2014 Nexenta Systems, Inc. All rights reserved. */
#include <sys/types.h>
+ #include <syslog.h>
#include <stdlib.h>
#include <errno.h>
#include <stdarg.h>
#include <stdio.h>
#include <string.h>
*** 86,96 ****
if (session->ns_data.dd_state == NDMP_DATA_STATE_IDLE ||
session->ns_data.dd_state == NDMP_DATA_STATE_HALTED)
return;
! NDMP_LOG(LOG_DEBUG, "data.operation: %d",
session->ns_data.dd_operation);
if (session->ns_data.dd_operation == NDMP_DATA_OP_BACKUP) {
/*
* Send/discard any buffered file history data.
--- 88,98 ----
if (session->ns_data.dd_state == NDMP_DATA_STATE_IDLE ||
session->ns_data.dd_state == NDMP_DATA_STATE_HALTED)
return;
! syslog(LOG_DEBUG, "data.operation: %d",
session->ns_data.dd_operation);
if (session->ns_data.dd_operation == NDMP_DATA_OP_BACKUP) {
/*
* Send/discard any buffered file history data.
*** 125,146 ****
}
req_v2.reason = session->ns_data.dd_halt_reason;
req_v2.text_reason = "";
! NDMP_LOG(LOG_DEBUG, "ndmp_send_request(NDMP_NOTIFY_DATA_HALTED)");
if (ndmp_send_request_lock(session->ns_connection,
NDMP_NOTIFY_DATA_HALTED, NDMP_NO_ERR, (void *)&req_v2, 0) < 0)
! NDMP_LOG(LOG_DEBUG, "Sending notify_data_halted request");
if (session->ns_data.dd_mover.addr_type == NDMP_ADDR_TCP) {
if (session->ns_mover.md_sock != session->ns_data.dd_sock) {
(void) close(session->ns_data.dd_sock);
} else {
! NDMP_LOG(LOG_DEBUG, "Not closing as used by mover");
}
session->ns_data.dd_sock = -1;
} else {
ndmpd_mover_error(session, NDMP_MOVER_HALT_CONNECT_CLOSED);
--- 127,148 ----
}
req_v2.reason = session->ns_data.dd_halt_reason;
req_v2.text_reason = "";
! syslog(LOG_DEBUG, "ndmp_send_request(NDMP_NOTIFY_DATA_HALTED)");
if (ndmp_send_request_lock(session->ns_connection,
NDMP_NOTIFY_DATA_HALTED, NDMP_NO_ERR, (void *)&req_v2, 0) < 0)
! syslog(LOG_DEBUG, "Sending notify_data_halted request");
if (session->ns_data.dd_mover.addr_type == NDMP_ADDR_TCP) {
if (session->ns_mover.md_sock != session->ns_data.dd_sock) {
(void) close(session->ns_data.dd_sock);
} else {
! syslog(LOG_DEBUG, "Not closing as used by mover");
}
session->ns_data.dd_sock = -1;
} else {
ndmpd_mover_error(session, NDMP_MOVER_HALT_CONNECT_CLOSED);
*** 184,194 ****
request.entry = buf;
if (ndmp_send_request(session->ns_connection, _NDMP_LOG_LOG,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! NDMP_LOG(LOG_DEBUG, "Sending log request");
return (-1);
}
return (0);
}
--- 186,196 ----
request.entry = buf;
if (ndmp_send_request(session->ns_connection, _NDMP_LOG_LOG,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! syslog(LOG_ERR, "Sending log request");
return (-1);
}
return (0);
}
*** 273,283 ****
if (ndmp_send_request_lock(session->ns_connection,
NDMP_NOTIFY_DATA_READ, NDMP_NO_ERR,
(void *)&request, 0) < 0) {
! NDMP_LOG(LOG_DEBUG,
"Sending notify_data_read request");
return (-1);
}
return (0);
}
--- 275,285 ----
if (ndmp_send_request_lock(session->ns_connection,
NDMP_NOTIFY_DATA_READ, NDMP_NO_ERR,
(void *)&request, 0) < 0) {
! syslog(LOG_ERR,
"Sending notify_data_read request");
return (-1);
}
return (0);
}
*** 337,347 ****
request.error = NDMP_PERMISSION_ERR;
}
if (ndmp_send_request_lock(session->ns_connection, NDMP_LOG_FILE,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! NDMP_LOG(LOG_DEBUG, "Sending log file request");
return (-1);
}
return (0);
}
--- 339,349 ----
request.error = NDMP_PERMISSION_ERR;
}
if (ndmp_send_request_lock(session->ns_connection, NDMP_LOG_FILE,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! syslog(LOG_ERR, "Sending log file request");
return (-1);
}
return (0);
}
*** 464,474 ****
request.log_type = type;
request.message_id = msg_id;
if (ndmp_send_request(session->ns_connection, NDMP_LOG_MESSAGE,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! NDMP_LOG(LOG_DEBUG, "Error sending log message request.");
return (-1);
}
return (0);
}
--- 466,476 ----
request.log_type = type;
request.message_id = msg_id;
if (ndmp_send_request(session->ns_connection, NDMP_LOG_MESSAGE,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! syslog(LOG_ERR, "Error sending log message request.");
return (-1);
}
return (0);
}
*** 617,627 ****
request.error = NDMP_PERMISSION_ERR;
}
if (ndmp_send_request_lock(session->ns_connection, NDMP_LOG_FILE,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! NDMP_LOG(LOG_DEBUG, "Error sending log file request");
return (-1);
}
return (0);
}
--- 619,629 ----
request.error = NDMP_PERMISSION_ERR;
}
if (ndmp_send_request_lock(session->ns_connection, NDMP_LOG_FILE,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! syslog(LOG_ERR, "Error sending log file request");
return (-1);
}
return (0);
}
*** 669,679 ****
request.length = long_long_to_quad(length);
if (ndmp_send_request_lock(session->ns_connection,
NDMP_NOTIFY_DATA_READ, NDMP_NO_ERR,
(void *)&request, 0) < 0) {
! NDMP_LOG(LOG_DEBUG,
"Sending notify_data_read request");
return (-1);
}
return (0);
--- 671,681 ----
request.length = long_long_to_quad(length);
if (ndmp_send_request_lock(session->ns_connection,
NDMP_NOTIFY_DATA_READ, NDMP_NO_ERR,
(void *)&request, 0) < 0) {
! syslog(LOG_ERR,
"Sending notify_data_read request");
return (-1);
}
return (0);
*** 754,764 ****
request.associated_message_valid = NDMP_NO_ASSOCIATED_MESSAGE;
request.associated_message_sequence = 0;
if (ndmp_send_request(session->ns_connection, NDMP_LOG_MESSAGE,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! NDMP_LOG(LOG_DEBUG, "Error sending log message request.");
return (-1);
}
return (0);
}
--- 756,766 ----
request.associated_message_valid = NDMP_NO_ASSOCIATED_MESSAGE;
request.associated_message_sequence = 0;
if (ndmp_send_request(session->ns_connection, NDMP_LOG_MESSAGE,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! syslog(LOG_ERR, "Error sending log message request.");
return (-1);
}
return (0);
}
*** 816,826 ****
break;
}
if (ndmp_send_request_lock(session->ns_connection, NDMP_LOG_FILE,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! NDMP_LOG(LOG_DEBUG, "Error sending log file request");
return (-1);
}
return (0);
}
--- 818,828 ----
break;
}
if (ndmp_send_request_lock(session->ns_connection, NDMP_LOG_FILE,
NDMP_NO_ERR, (void *)&request, 0) < 0) {
! syslog(LOG_ERR, "Error sending log file request");
return (-1);
}
return (0);
}
*** 920,930 ****
session->ns_data.dd_env = realloc((void *)session->ns_data.dd_env,
sizeof (ndmp_pval) * (session->ns_data.dd_env_len + 1));
if (session->ns_data.dd_env == NULL) {
! NDMP_LOG(LOG_ERR, "Out of memory.");
return (-1);
}
namebuf = strdup(name);
if (namebuf == NULL)
return (-1);
--- 922,932 ----
session->ns_data.dd_env = realloc((void *)session->ns_data.dd_env,
sizeof (ndmp_pval) * (session->ns_data.dd_env_len + 1));
if (session->ns_data.dd_env == NULL) {
! syslog(LOG_ERR, "Out of memory.");
return (-1);
}
namebuf = strdup(name);
if (namebuf == NULL)
return (-1);