Merge remote branch 'cros/upstream' into tempbranch

BUG=
TEST=

Review URL: http://codereview.chromium.org/4823005

Change-Id: I5d56f1c10d0fce7f9d7dc3ad727ea52dcb9b2d6c
diff --git a/frontend/afe/rpc_utils.py b/frontend/afe/rpc_utils.py
index 452aa8f..7250d92 100644
--- a/frontend/afe/rpc_utils.py
+++ b/frontend/afe/rpc_utils.py
@@ -233,8 +233,10 @@
                      set(host.hostname for host in ok_hosts))
     if failing_hosts:
         raise model_logic.ValidationError(
-            {'hosts' : 'Host(s) failed to meet job dependencies: ' +
-                       ', '.join(failing_hosts)})
+            {'hosts' : 'Host(s) failed to meet job dependencies (' +
+                       (', '.join(job_dependencies)) + '): ' +
+                       (', '.join(failing_hosts))})
+
 
 
 def _execution_key_for(host_queue_entry):
diff --git a/frontend/migrations/064_add_jobs_and_tests_time_indices.py b/frontend/migrations/064_add_jobs_and_tests_time_indices.py
new file mode 100644
index 0000000..3508bba
--- /dev/null
+++ b/frontend/migrations/064_add_jobs_and_tests_time_indices.py
@@ -0,0 +1,10 @@
+# These indices speed up date-range queries often used in making dashboards.
+UP_SQL = """
+alter table tko_tests add index started_time (started_time);
+alter table afe_jobs add index created_on (created_on);
+"""
+
+DOWN_SQL = """
+drop index started_time on tko_tests;
+drop index created_on on afe_jobs;
+"""