mr_protos.proto 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. /**
  2. * Licensed to the Apache Software Foundation (ASF) under one
  3. * or more contributor license agreements. See the NOTICE file
  4. * distributed with this work for additional information
  5. * regarding copyright ownership. The ASF licenses this file
  6. * to you under the Apache License, Version 2.0 (the
  7. * "License"); you may not use this file except in compliance
  8. * with the License. You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. * See the License for the specific language governing permissions and
  16. * limitations under the License.
  17. */
  18. option java_package = "org.apache.hadoop.mapreduce.v2.proto";
  19. option java_outer_classname = "MRProtos";
  20. option java_generic_services = true;
  21. option java_generate_equals_and_hash = true;
  22. import "yarn_protos.proto";
  23. enum TaskTypeProto {
  24. MAP = 1;
  25. REDUCE = 2;
  26. }
  27. message JobIdProto {
  28. optional ApplicationIdProto app_id = 1;
  29. optional int32 id = 2;
  30. }
  31. message TaskIdProto {
  32. optional JobIdProto job_id = 1;
  33. optional TaskTypeProto task_type = 2;
  34. optional int32 id = 3;
  35. }
  36. message TaskAttemptIdProto {
  37. optional TaskIdProto task_id = 1;
  38. optional int32 id = 2;
  39. }
  40. enum TaskStateProto {
  41. TS_NEW = 1;
  42. TS_SCHEDULED = 2;
  43. TS_RUNNING = 3;
  44. TS_SUCCEEDED = 4;
  45. TS_FAILED = 5;
  46. TS_KILL_WAIT = 6;
  47. TS_KILLED = 7;
  48. }
  49. enum PhaseProto {
  50. P_STARTING = 1;
  51. P_MAP = 2;
  52. P_SHUFFLE = 3;
  53. P_SORT = 4;
  54. P_REDUCE = 5;
  55. P_CLEANUP = 6;
  56. }
  57. message CounterProto {
  58. optional string name = 1;
  59. optional string display_name = 2;
  60. optional int64 value = 3;
  61. }
  62. message CounterGroupProto {
  63. optional string name = 1;
  64. optional string display_name = 2;
  65. repeated StringCounterMapProto counters = 3;
  66. }
  67. message CountersProto {
  68. repeated StringCounterGroupMapProto counter_groups = 1;
  69. }
  70. message TaskReportProto {
  71. optional TaskIdProto task_id = 1;
  72. optional TaskStateProto task_state = 2;
  73. optional float progress = 3;
  74. optional int64 start_time = 4;
  75. optional int64 finish_time = 5;
  76. optional CountersProto counters = 6;
  77. repeated TaskAttemptIdProto running_attempts = 7;
  78. optional TaskAttemptIdProto successful_attempt = 8;
  79. repeated string diagnostics = 9;
  80. }
  81. enum TaskAttemptStateProto {
  82. TA_NEW = 1;
  83. TA_UNASSIGNED = 2;
  84. TA_ASSIGNED = 3;
  85. TA_RUNNING = 4;
  86. TA_COMMIT_PENDING = 5;
  87. TA_SUCCESS_CONTAINER_CLEANUP = 6;
  88. TA_SUCCEEDED = 7;
  89. TA_FAIL_CONTAINER_CLEANUP = 8;
  90. TA_FAIL_TASK_CLEANUP = 9;
  91. TA_FAILED = 10;
  92. TA_KILL_CONTAINER_CLEANUP = 11;
  93. TA_KILL_TASK_CLEANUP = 12;
  94. TA_KILLED = 13;
  95. }
  96. message TaskAttemptReportProto {
  97. optional TaskAttemptIdProto task_attempt_id = 1;
  98. optional TaskAttemptStateProto task_attempt_state = 2;
  99. optional float progress = 3;
  100. optional int64 start_time = 4;
  101. optional int64 finish_time = 5;
  102. optional CountersProto counters = 6;
  103. optional string diagnostic_info = 7;
  104. optional string state_string = 8;
  105. optional PhaseProto phase = 9;
  106. optional int64 shuffle_finish_time = 10;
  107. optional int64 sort_finish_time=11;
  108. }
  109. enum JobStateProto {
  110. J_NEW = 1;
  111. J_INITED = 2;
  112. J_RUNNING = 3;
  113. J_SUCCEEDED = 4;
  114. J_FAILED = 5;
  115. J_KILL_WAIT = 6;
  116. J_KILLED = 7;
  117. J_ERROR = 8;
  118. }
  119. message JobReportProto {
  120. optional JobIdProto job_id = 1;
  121. optional JobStateProto job_state = 2;
  122. optional float map_progress = 3;
  123. optional float reduce_progress = 4;
  124. optional float cleanup_progress = 5;
  125. optional float setup_progress = 6;
  126. optional int64 start_time = 7;
  127. optional int64 finish_time = 8;
  128. optional string user = 9;
  129. optional string jobName = 10;
  130. optional string trackingUrl = 11;
  131. optional string diagnostics = 12;
  132. }
  133. enum TaskAttemptCompletionEventStatusProto {
  134. TACE_FAILED = 1;
  135. TACE_KILLED = 2;
  136. TACE_SUCCEEDED = 3;
  137. TACE_OBSOLETE = 4;
  138. TACE_TIPFAILED = 5;
  139. }
  140. message TaskAttemptCompletionEventProto {
  141. optional TaskAttemptIdProto attempt_id = 1;
  142. optional TaskAttemptCompletionEventStatusProto status = 2;
  143. optional string map_output_server_address = 3;
  144. optional int32 attempt_run_time = 4;
  145. optional int32 event_id = 5;
  146. }
  147. message StringCounterMapProto {
  148. optional string key = 1;
  149. optional CounterProto value = 2;
  150. }
  151. message StringCounterGroupMapProto {
  152. optional string key = 1;
  153. optional CounterGroupProto value = 2;
  154. }