diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2013-09-15 12:15:38 -0400 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2013-09-16 09:47:28 -0500 |
commit | 1244d8d640a2644aa8dc8e588cd9c414b3d39163 (patch) | |
tree | 6335ccdf77afcdabfa918a7032dd98bc7f40fc06 /src/core/transaction.c | |
parent | c32fc72f371535d29e0fce8c92694054c15427db (diff) | |
download | systemd-1244d8d640a2644aa8dc8e588cd9c414b3d39163.tar.gz systemd-1244d8d640a2644aa8dc8e588cd9c414b3d39163.tar.bz2 systemd-1244d8d640a2644aa8dc8e588cd9c414b3d39163.zip |
transaction.c: do not point users to logs when unit not found
The logs are unlikely to contain any useful information in this case.
Also, change "walked on cycle path" to "found dependency on", which
is less technical and indicates the direction. With the old message,
I was never sure if prior units depended on later ones, or vice versa.
https://bugzilla.redhat.com/show_bug.cgi?id=996133
https://bugzilla.redhat.com/show_bug.cgi?id=997082
Diffstat (limited to 'src/core/transaction.c')
-rw-r--r-- | src/core/transaction.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/core/transaction.c b/src/core/transaction.c index 27efef7cc6..203070fa26 100644 --- a/src/core/transaction.c +++ b/src/core/transaction.c @@ -344,7 +344,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi assert(!j->transaction_prev); /* Does a recursive sweep through the ordering graph, looking - * for a cycle. If we find cycle we try to break it. */ + * for a cycle. If we find a cycle we try to break it. */ /* Have we seen this before? */ if (j->generation == generation) { @@ -371,7 +371,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi /* logging for j not k here here to provide consistent narrative */ log_info_unit(j->unit->id, - "Walked on cycle path to %s/%s", + "Found dependency on %s/%s", k->unit->id, job_type_to_string(k->type)); if (!delete && @@ -860,7 +860,7 @@ int transaction_add_job_and_dependencies( return -EINVAL; } - if (type != JOB_STOP && (unit->load_state == UNIT_ERROR || unit->load_state == UNIT_NOT_FOUND)) { + if (type != JOB_STOP && unit->load_state == UNIT_ERROR) { dbus_set_error(e, BUS_ERROR_LOAD_FAILED, "Unit %s failed to load: %s. " "See system logs and 'systemctl status %s' for details.", @@ -870,6 +870,14 @@ int transaction_add_job_and_dependencies( return -EINVAL; } + if (type != JOB_STOP && unit->load_state == UNIT_NOT_FOUND) { + dbus_set_error(e, BUS_ERROR_LOAD_FAILED, + "Unit %s failed to load: %s.", + unit->id, + strerror(-unit->load_error)); + return -EINVAL; + } + if (type != JOB_STOP && unit->load_state == UNIT_MASKED) { dbus_set_error(e, BUS_ERROR_MASKED, "Unit %s is masked.", unit->id); return -EADDRNOTAVAIL; |