Improve problems logging.
MFC after: 3 days
This commit is contained in:
parent
7208920499
commit
cd7b7ee577
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=216479
@ -1135,6 +1135,16 @@ local_send_thread(void *arg)
|
|||||||
/*
|
/*
|
||||||
* If READ failed, try to read from remote node.
|
* If READ failed, try to read from remote node.
|
||||||
*/
|
*/
|
||||||
|
if (ret < 0) {
|
||||||
|
reqlog(LOG_WARNING, 0, ggio,
|
||||||
|
"Local request failed (%s), trying remote node. ",
|
||||||
|
strerror(errno));
|
||||||
|
} else if (ret != ggio->gctl_length) {
|
||||||
|
reqlog(LOG_WARNING, 0, ggio,
|
||||||
|
"Local request failed (%zd != %jd), trying remote node. ",
|
||||||
|
(intmax_t)ret,
|
||||||
|
(intmax_t)ggio->gctl_length);
|
||||||
|
}
|
||||||
QUEUE_INSERT1(hio, send, rncomp);
|
QUEUE_INSERT1(hio, send, rncomp);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -1143,28 +1153,43 @@ local_send_thread(void *arg)
|
|||||||
ret = pwrite(res->hr_localfd, ggio->gctl_data,
|
ret = pwrite(res->hr_localfd, ggio->gctl_data,
|
||||||
ggio->gctl_length,
|
ggio->gctl_length,
|
||||||
ggio->gctl_offset + res->hr_localoff);
|
ggio->gctl_offset + res->hr_localoff);
|
||||||
if (ret < 0)
|
if (ret < 0) {
|
||||||
hio->hio_errors[ncomp] = errno;
|
hio->hio_errors[ncomp] = errno;
|
||||||
else if (ret != ggio->gctl_length)
|
reqlog(LOG_WARNING, 0, ggio,
|
||||||
|
"Local request failed (%s): ",
|
||||||
|
strerror(errno));
|
||||||
|
} else if (ret != ggio->gctl_length) {
|
||||||
hio->hio_errors[ncomp] = EIO;
|
hio->hio_errors[ncomp] = EIO;
|
||||||
else
|
reqlog(LOG_WARNING, 0, ggio,
|
||||||
|
"Local request failed (%zd != %jd): ",
|
||||||
|
(intmax_t)ret, (intmax_t)ggio->gctl_length);
|
||||||
|
} else {
|
||||||
hio->hio_errors[ncomp] = 0;
|
hio->hio_errors[ncomp] = 0;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case BIO_DELETE:
|
case BIO_DELETE:
|
||||||
ret = g_delete(res->hr_localfd,
|
ret = g_delete(res->hr_localfd,
|
||||||
ggio->gctl_offset + res->hr_localoff,
|
ggio->gctl_offset + res->hr_localoff,
|
||||||
ggio->gctl_length);
|
ggio->gctl_length);
|
||||||
if (ret < 0)
|
if (ret < 0) {
|
||||||
hio->hio_errors[ncomp] = errno;
|
hio->hio_errors[ncomp] = errno;
|
||||||
else
|
reqlog(LOG_WARNING, 0, ggio,
|
||||||
|
"Local request failed (%s): ",
|
||||||
|
strerror(errno));
|
||||||
|
} else {
|
||||||
hio->hio_errors[ncomp] = 0;
|
hio->hio_errors[ncomp] = 0;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case BIO_FLUSH:
|
case BIO_FLUSH:
|
||||||
ret = g_flush(res->hr_localfd);
|
ret = g_flush(res->hr_localfd);
|
||||||
if (ret < 0)
|
if (ret < 0) {
|
||||||
hio->hio_errors[ncomp] = errno;
|
hio->hio_errors[ncomp] = errno;
|
||||||
else
|
reqlog(LOG_WARNING, 0, ggio,
|
||||||
|
"Local request failed (%s): ",
|
||||||
|
strerror(errno));
|
||||||
|
} else {
|
||||||
hio->hio_errors[ncomp] = 0;
|
hio->hio_errors[ncomp] = 0;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (refcount_release(&hio->hio_countdown)) {
|
if (refcount_release(&hio->hio_countdown)) {
|
||||||
@ -1446,6 +1471,8 @@ remote_recv_thread(void *arg)
|
|||||||
if (error != 0) {
|
if (error != 0) {
|
||||||
/* Request failed on remote side. */
|
/* Request failed on remote side. */
|
||||||
hio->hio_errors[ncomp] = error;
|
hio->hio_errors[ncomp] = error;
|
||||||
|
reqlog(LOG_WARNING, 0, &hio->hio_ggio,
|
||||||
|
"Remote request failed (%s): ", strerror(error));
|
||||||
nv_free(nv);
|
nv_free(nv);
|
||||||
goto done_queue;
|
goto done_queue;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user