mirror of
https://github.com/systemd/systemd
synced 2024-10-06 16:21:34 +00:00
tree-wide: Handle EADDRNOTAVAIL as journal corruption
Journal corruption is not only indicated by EBADMSG but also by EADDRNOTAVAIL so treat that as corruption in a few more cases.
This commit is contained in:
parent
ab13274a19
commit
a3b076f641
|
@ -73,7 +73,7 @@ int process_source(RemoteSource *source, JournalFileFlags file_flags) {
|
|||
&source->importer.ts,
|
||||
&source->importer.boot_id,
|
||||
file_flags);
|
||||
if (r == -EBADMSG) {
|
||||
if (IN_SET(r, -EBADMSG, -EADDRNOTAVAIL)) {
|
||||
log_warning_errno(r, "Entry is invalid, ignoring.");
|
||||
r = 0;
|
||||
} else if (r < 0)
|
||||
|
|
|
@ -2865,7 +2865,7 @@ static int generic_array_bisect(
|
|||
r = -EBADMSG;
|
||||
else
|
||||
r = test_object(f, p, needle);
|
||||
if (r == -EBADMSG) {
|
||||
if (IN_SET(r, -EBADMSG, -EADDRNOTAVAIL)) {
|
||||
log_debug_errno(r, "Encountered invalid entry while bisecting, cutting algorithm short. (1)");
|
||||
n = i;
|
||||
continue;
|
||||
|
@ -2948,7 +2948,7 @@ static int generic_array_bisect(
|
|||
r = -EBADMSG;
|
||||
else
|
||||
r = test_object(f, p, needle);
|
||||
if (r == -EBADMSG) {
|
||||
if (IN_SET(r, -EBADMSG, -EADDRNOTAVAIL)) {
|
||||
log_debug_errno(r, "Encountered invalid entry while bisecting, cutting algorithm short. (2)");
|
||||
right = n = i;
|
||||
continue;
|
||||
|
|
|
@ -509,7 +509,7 @@ static int output_short(
|
|||
if (r < 0)
|
||||
return r;
|
||||
}
|
||||
if (r == -EBADMSG) {
|
||||
if (IN_SET(r, -EBADMSG, -EADDRNOTAVAIL)) {
|
||||
log_debug_errno(r, "Skipping message we can't read: %m");
|
||||
return 0;
|
||||
}
|
||||
|
@ -868,7 +868,7 @@ static int output_export(
|
|||
|
||||
fputc('\n', f);
|
||||
}
|
||||
if (r == -EBADMSG) {
|
||||
if (IN_SET(r, -EADDRNOTAVAIL, -EBADMSG)) {
|
||||
log_debug_errno(r, "Skipping message we can't read: %m");
|
||||
return 0;
|
||||
}
|
||||
|
@ -1116,7 +1116,7 @@ static int output_json(
|
|||
size_t size;
|
||||
|
||||
r = sd_journal_enumerate_data(j, &data, &size);
|
||||
if (r == -EBADMSG) {
|
||||
if (IN_SET(r, -EBADMSG, -EADDRNOTAVAIL)) {
|
||||
log_debug_errno(r, "Skipping message we can't read: %m");
|
||||
r = 0;
|
||||
goto finish;
|
||||
|
@ -1204,7 +1204,7 @@ static int output_cat_field(
|
|||
get_log_colors(prio, &color_on, &color_off, &highlight_on);
|
||||
|
||||
r = sd_journal_get_data(j, field, &data, &l);
|
||||
if (r == -EBADMSG) {
|
||||
if (IN_SET(r, -EBADMSG, -EADDRNOTAVAIL)) {
|
||||
log_debug_errno(r, "Skipping message we can't read: %m");
|
||||
return 0;
|
||||
}
|
||||
|
@ -1276,7 +1276,7 @@ static int output_cat(
|
|||
/* Determine priority of this entry, so that we can color it nicely */
|
||||
|
||||
r = sd_journal_get_data(j, "PRIORITY", &data, &l);
|
||||
if (r == -EBADMSG) {
|
||||
if (IN_SET(r, -EBADMSG, -EADDRNOTAVAIL)) {
|
||||
log_debug_errno(r, "Skipping message we can't read: %m");
|
||||
return 0;
|
||||
}
|
||||
|
@ -1420,7 +1420,7 @@ int show_journal_entry(
|
|||
n_columns = columns();
|
||||
|
||||
r = get_display_timestamp(j, &display_ts, &boot_id);
|
||||
if (r == -EBADMSG) {
|
||||
if (IN_SET(r, -EBADMSG, -EADDRNOTAVAIL)) {
|
||||
log_debug_errno(r, "Skipping message we can't read: %m");
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue