indexify 0.4.2__tar.gz → 0.4.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. {indexify-0.4.2 → indexify-0.4.3}/PKG-INFO +2 -3
  2. {indexify-0.4.2 → indexify-0.4.3}/pyproject.toml +2 -2
  3. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/create_function_executor.py +5 -1
  4. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/message_validators.py +5 -1
  5. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/host_resources/nvidia_gpu_allocator.py +8 -1
  6. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/proto/executor_api.proto +1 -1
  7. indexify-0.4.3/src/indexify/proto/executor_api_pb2.py +86 -0
  8. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/proto/executor_api_pb2.pyi +4 -4
  9. indexify-0.4.2/src/indexify/proto/executor_api_pb2.py +0 -86
  10. {indexify-0.4.2 → indexify-0.4.3}/README.md +0 -0
  11. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/cli/__init__.py +0 -0
  12. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/cli/build_image.py +0 -0
  13. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/cli/deploy.py +0 -0
  14. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/cli/executor.py +0 -0
  15. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/README.md +0 -0
  16. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/blob_store/blob_store.py +0 -0
  17. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/blob_store/local_fs_blob_store.py +0 -0
  18. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/blob_store/metrics/blob_store.py +0 -0
  19. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/blob_store/s3_blob_store.py +0 -0
  20. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/channel_manager.py +0 -0
  21. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/executor.py +0 -0
  22. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_allowlist.py +0 -0
  23. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor/function_executor.py +0 -0
  24. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor/health_checker.py +0 -0
  25. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor/invocation_state_client.py +0 -0
  26. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor/metrics/function_executor.py +0 -0
  27. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor/metrics/health_checker.py +0 -0
  28. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor/metrics/invocation_state_client.py +0 -0
  29. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor/server/client_configuration.py +0 -0
  30. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor/server/function_executor_server.py +0 -0
  31. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor/server/function_executor_server_factory.py +0 -0
  32. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor/server/subprocess_function_executor_server.py +0 -0
  33. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor/server/subprocess_function_executor_server_factory.py +0 -0
  34. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/__init__.py +0 -0
  35. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/completed_task_metrics.py +0 -0
  36. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/debug_event_loop.py +0 -0
  37. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/destroy_function_executor.py +0 -0
  38. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/downloads.py +0 -0
  39. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/events.py +0 -0
  40. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/function_executor_controller.py +0 -0
  41. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/loggers.py +0 -0
  42. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/metrics/completed_task_metrics.py +0 -0
  43. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/metrics/downloads.py +0 -0
  44. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/metrics/function_executor_controller.py +0 -0
  45. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/metrics/run_task.py +0 -0
  46. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/metrics/upload_task_output.py +0 -0
  47. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/prepare_task.py +0 -0
  48. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/run_task.py +0 -0
  49. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/task_info.py +0 -0
  50. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/task_output.py +0 -0
  51. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/function_executor_controller/upload_task_output.py +0 -0
  52. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/host_resources/host_resources.py +0 -0
  53. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/host_resources/nvidia_gpu.py +0 -0
  54. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/metrics/channel_manager.py +0 -0
  55. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/metrics/executor.py +0 -0
  56. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/metrics/state_reconciler.py +0 -0
  57. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/metrics/state_reporter.py +0 -0
  58. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/monitoring/handler.py +0 -0
  59. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/monitoring/health_check_handler.py +0 -0
  60. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/monitoring/health_checker/generic_health_checker.py +0 -0
  61. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/monitoring/health_checker/health_checker.py +0 -0
  62. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/monitoring/metrics.py +0 -0
  63. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/monitoring/prometheus_metrics_handler.py +0 -0
  64. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/monitoring/server.py +0 -0
  65. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/monitoring/startup_probe_handler.py +0 -0
  66. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/state_reconciler.py +0 -0
  67. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/executor/state_reporter.py +0 -0
  68. {indexify-0.4.2 → indexify-0.4.3}/src/indexify/proto/executor_api_pb2_grpc.py +0 -0
@@ -1,15 +1,14 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: indexify
3
- Version: 0.4.2
3
+ Version: 0.4.3
4
4
  Summary: Open Source Indexify components and helper tools
5
5
  Home-page: https://github.com/tensorlakeai/indexify
6
6
  License: Apache 2.0
7
7
  Author: Tensorlake Inc.
8
8
  Author-email: support@tensorlake.ai
9
- Requires-Python: >=3.9,<4.0
9
+ Requires-Python: >=3.10,<4.0
10
10
  Classifier: License :: Other/Proprietary License
11
11
  Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.9
13
12
  Classifier: Programming Language :: Python :: 3.10
14
13
  Classifier: Programming Language :: Python :: 3.11
15
14
  Classifier: Programming Language :: Python :: 3.12
@@ -1,7 +1,7 @@
1
1
  [tool.poetry]
2
2
  name = "indexify"
3
3
  # Incremented if any of the components provided in this packages are updated.
4
- version = "0.4.2"
4
+ version = "0.4.3"
5
5
  description = "Open Source Indexify components and helper tools"
6
6
  authors = ["Tensorlake Inc. <support@tensorlake.ai>"]
7
7
  license = "Apache 2.0"
@@ -14,7 +14,7 @@ indexify-cli = "indexify.cli:cli"
14
14
 
15
15
  [tool.poetry.dependencies]
16
16
  # Common dependencies
17
- python = "^3.9"
17
+ python = "^3.10"
18
18
  # structlog is provided by tensorlake
19
19
  # pyyaml is provided by tensorlake
20
20
  # httpx is provided by tensorlake
@@ -105,6 +105,10 @@ async def _create_function_executor(
105
105
  logger=logger,
106
106
  )
107
107
 
108
+ gpu_count: int = 0
109
+ if function_executor_description.resources.HasField("gpu"):
110
+ gpu_count = function_executor_description.resources.gpu.count
111
+
108
112
  config: FunctionExecutorServerConfiguration = FunctionExecutorServerConfiguration(
109
113
  executor_id=executor_id,
110
114
  function_executor_id=function_executor_description.id,
@@ -117,7 +121,7 @@ async def _create_function_executor(
117
121
  cpu_ms_per_sec=function_executor_description.resources.cpu_ms_per_sec,
118
122
  memory_bytes=function_executor_description.resources.memory_bytes,
119
123
  disk_bytes=function_executor_description.resources.disk_bytes,
120
- gpu_count=function_executor_description.resources.gpu_count,
124
+ gpu_count=gpu_count,
121
125
  )
122
126
  if function_executor_description.HasField("image_uri"):
123
127
  config.image_uri = function_executor_description.image_uri
@@ -32,7 +32,11 @@ def validate_function_executor_description(
32
32
  validator.required_field("cpu_ms_per_sec")
33
33
  validator.required_field("memory_bytes")
34
34
  validator.required_field("disk_bytes")
35
- validator.required_field("gpu_count")
35
+
36
+ if function_executor_description.resources.HasField("gpu"):
37
+ validator = MessageValidator(function_executor_description.resources.gpu)
38
+ validator.required_field("count")
39
+ validator.required_field("model")
36
40
 
37
41
 
38
42
  def validate_task(task: Task) -> None:
@@ -40,11 +40,18 @@ class NvidiaGPUAllocator:
40
40
  allocated_gpus: List[NvidiaGPUInfo] = []
41
41
  for _ in range(count):
42
42
  allocated_gpus.append(self._free_gpus.pop())
43
+
44
+ if len(allocated_gpus) > 0:
45
+ logger.bind(module=__name__).info("allocated GPUs:", gpus=allocated_gpus)
46
+
43
47
  return allocated_gpus
44
48
 
45
- def deallocate(self, gpus: List[NvidiaGPUInfo]) -> None:
49
+ def deallocate(self, gpus: List[NvidiaGPUInfo], logger: Any) -> None:
46
50
  self._free_gpus.extend(gpus)
47
51
 
52
+ if len(gpus) > 0:
53
+ logger.bind(module=__name__).info("deallocated GPUs:", gpus=gpus)
54
+
48
55
  def list_all(self) -> List[NvidiaGPUInfo]:
49
56
  return list(self._all_gpus) # Return a copy to avoid external modification
50
57
 
@@ -94,7 +94,7 @@ message FunctionExecutorResources {
94
94
  optional uint32 cpu_ms_per_sec = 1;
95
95
  optional uint64 memory_bytes = 2;
96
96
  optional uint64 disk_bytes = 3;
97
- optional uint32 gpu_count = 4;
97
+ optional GPUResources gpu = 4;
98
98
  }
99
99
 
100
100
  message FunctionExecutorDescription {
@@ -0,0 +1,86 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: indexify/proto/executor_api.proto
5
+ # Protobuf Python Version: 5.29.0
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+
13
+ _runtime_version.ValidateProtobufRuntimeVersion(
14
+ _runtime_version.Domain.PUBLIC, 5, 29, 0, "", "indexify/proto/executor_api.proto"
15
+ )
16
+ # @@protoc_insertion_point(imports)
17
+
18
+ _sym_db = _symbol_database.Default()
19
+
20
+
21
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(
22
+ b'\n!indexify/proto/executor_api.proto\x12\x0f\x65xecutor_api_pb"\xeb\x01\n\x0b\x44\x61taPayload\x12\x11\n\x04size\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x18\n\x0bsha256_hash\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x03uri\x18\x04 \x01(\tH\x02\x88\x01\x01\x12;\n\x08\x65ncoding\x18\x05 \x01(\x0e\x32$.executor_api_pb.DataPayloadEncodingH\x03\x88\x01\x01\x12\x1d\n\x10\x65ncoding_version\x18\x06 \x01(\x04H\x04\x88\x01\x01\x42\x07\n\x05_sizeB\x0e\n\x0c_sha256_hashB\x06\n\x04_uriB\x0b\n\t_encodingB\x13\n\x11_encoding_version"e\n\x0cGPUResources\x12\x12\n\x05\x63ount\x18\x01 \x01(\rH\x00\x88\x01\x01\x12-\n\x05model\x18\x02 \x01(\x0e\x32\x19.executor_api_pb.GPUModelH\x01\x88\x01\x01\x42\x08\n\x06_countB\x08\n\x06_model"\xc2\x01\n\rHostResources\x12\x16\n\tcpu_count\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x19\n\x0cmemory_bytes\x18\x02 \x01(\x04H\x01\x88\x01\x01\x12\x17\n\ndisk_bytes\x18\x03 \x01(\x04H\x02\x88\x01\x01\x12/\n\x03gpu\x18\x04 \x01(\x0b\x32\x1d.executor_api_pb.GPUResourcesH\x03\x88\x01\x01\x42\x0c\n\n_cpu_countB\x0f\n\r_memory_bytesB\r\n\x0b_disk_bytesB\x06\n\x04_gpu"\xbb\x01\n\x0f\x41llowedFunction\x12\x16\n\tnamespace\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\ngraph_name\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x1a\n\rfunction_name\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\rgraph_version\x18\x04 \x01(\tH\x03\x88\x01\x01\x42\x0c\n\n_namespaceB\r\n\x0b_graph_nameB\x10\n\x0e_function_nameB\x10\n\x0e_graph_version"\xd8\x01\n\x19\x46unctionExecutorResources\x12\x1b\n\x0e\x63pu_ms_per_sec\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x19\n\x0cmemory_bytes\x18\x02 \x01(\x04H\x01\x88\x01\x01\x12\x17\n\ndisk_bytes\x18\x03 \x01(\x04H\x02\x88\x01\x01\x12/\n\x03gpu\x18\x04 \x01(\x0b\x32\x1d.executor_api_pb.GPUResourcesH\x03\x88\x01\x01\x42\x11\n\x0f_cpu_ms_per_secB\x0f\n\r_memory_bytesB\r\n\x0b_disk_bytesB\x06\n\x04_gpu"\xed\x03\n\x1b\x46unctionExecutorDescription\x12\x0f\n\x02id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tnamespace\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x17\n\ngraph_name\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\rgraph_version\x18\x04 \x01(\tH\x03\x88\x01\x01\x12\x1a\n\rfunction_name\x18\x05 \x01(\tH\x04\x88\x01\x01\x12\x16\n\timage_uri\x18\x06 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x0csecret_names\x18\x07 \x03(\t\x12%\n\x18\x63ustomer_code_timeout_ms\x18\t \x01(\rH\x06\x88\x01\x01\x12\x30\n\x05graph\x18\n \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\x07\x88\x01\x01\x12\x42\n\tresources\x18\x0b \x01(\x0b\x32*.executor_api_pb.FunctionExecutorResourcesH\x08\x88\x01\x01\x42\x05\n\x03_idB\x0c\n\n_namespaceB\r\n\x0b_graph_nameB\x10\n\x0e_graph_versionB\x10\n\x0e_function_nameB\x0c\n\n_image_uriB\x1b\n\x19_customer_code_timeout_msB\x08\n\x06_graphB\x0c\n\n_resources"\xa4\x02\n\x15\x46unctionExecutorState\x12\x46\n\x0b\x64\x65scription\x18\x01 \x01(\x0b\x32,.executor_api_pb.FunctionExecutorDescriptionH\x00\x88\x01\x01\x12<\n\x06status\x18\x02 \x01(\x0e\x32\'.executor_api_pb.FunctionExecutorStatusH\x01\x88\x01\x01\x12S\n\x12termination_reason\x18\x03 \x01(\x0e\x32\x32.executor_api_pb.FunctionExecutorTerminationReasonH\x02\x88\x01\x01\x42\x0e\n\x0c_descriptionB\t\n\x07_statusB\x15\n\x13_termination_reason"\xce\x05\n\rExecutorState\x12\x18\n\x0b\x65xecutor_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x08hostname\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x14\n\x07version\x18\x05 \x01(\tH\x02\x88\x01\x01\x12\x34\n\x06status\x18\x06 \x01(\x0e\x32\x1f.executor_api_pb.ExecutorStatusH\x03\x88\x01\x01\x12<\n\x0ftotal_resources\x18\r \x01(\x0b\x32\x1e.executor_api_pb.HostResourcesH\x04\x88\x01\x01\x12N\n!total_function_executor_resources\x18\x07 \x01(\x0b\x32\x1e.executor_api_pb.HostResourcesH\x05\x88\x01\x01\x12;\n\x11\x61llowed_functions\x18\x08 \x03(\x0b\x32 .executor_api_pb.AllowedFunction\x12H\n\x18\x66unction_executor_states\x18\t \x03(\x0b\x32&.executor_api_pb.FunctionExecutorState\x12:\n\x06labels\x18\n \x03(\x0b\x32*.executor_api_pb.ExecutorState.LabelsEntry\x12\x17\n\nstate_hash\x18\x0b \x01(\tH\x06\x88\x01\x01\x12\x19\n\x0cserver_clock\x18\x0c \x01(\x04H\x07\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0e\n\x0c_executor_idB\x0b\n\t_hostnameB\n\n\x08_versionB\t\n\x07_statusB\x12\n\x10_total_resourcesB$\n"_total_function_executor_resourcesB\r\n\x0b_state_hashB\x0f\n\r_server_clock"\x9f\x01\n\x1aReportExecutorStateRequest\x12;\n\x0e\x65xecutor_state\x18\x01 \x01(\x0b\x32\x1e.executor_api_pb.ExecutorStateH\x00\x88\x01\x01\x12\x31\n\x0ctask_results\x18\x02 \x03(\x0b\x32\x1b.executor_api_pb.TaskResultB\x11\n\x0f_executor_state"\x1d\n\x1bReportExecutorStateResponse"\xcf\x01\n\x0fTaskRetryPolicy\x12\x18\n\x0bmax_retries\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x1d\n\x10initial_delay_ms\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x19\n\x0cmax_delay_ms\x18\x03 \x01(\rH\x02\x88\x01\x01\x12\x1d\n\x10\x64\x65lay_multiplier\x18\x04 \x01(\rH\x03\x88\x01\x01\x42\x0e\n\x0c_max_retriesB\x13\n\x11_initial_delay_msB\x0f\n\r_max_delay_msB\x13\n\x11_delay_multiplier"\xc6\x04\n\x04Task\x12\x0f\n\x02id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tnamespace\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x17\n\ngraph_name\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\rgraph_version\x18\x04 \x01(\tH\x03\x88\x01\x01\x12\x1a\n\rfunction_name\x18\x05 \x01(\tH\x04\x88\x01\x01\x12 \n\x13graph_invocation_id\x18\x06 \x01(\tH\x05\x88\x01\x01\x12\x17\n\ntimeout_ms\x18\n \x01(\rH\x06\x88\x01\x01\x12\x30\n\x05input\x18\x0b \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\x07\x88\x01\x01\x12\x38\n\rreducer_input\x18\x0c \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\x08\x88\x01\x01\x12&\n\x19output_payload_uri_prefix\x18\r \x01(\tH\t\x88\x01\x01\x12;\n\x0cretry_policy\x18\x0e \x01(\x0b\x32 .executor_api_pb.TaskRetryPolicyH\n\x88\x01\x01\x42\x05\n\x03_idB\x0c\n\n_namespaceB\r\n\x0b_graph_nameB\x10\n\x0e_graph_versionB\x10\n\x0e_function_nameB\x16\n\x14_graph_invocation_idB\r\n\x0b_timeout_msB\x08\n\x06_inputB\x10\n\x0e_reducer_inputB\x1c\n\x1a_output_payload_uri_prefixB\x0f\n\r_retry_policy"\xad\x01\n\x0eTaskAllocation\x12!\n\x14\x66unction_executor_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12(\n\x04task\x18\x02 \x01(\x0b\x32\x15.executor_api_pb.TaskH\x01\x88\x01\x01\x12\x1a\n\rallocation_id\x18\x03 \x01(\tH\x02\x88\x01\x01\x42\x17\n\x15_function_executor_idB\x07\n\x05_taskB\x10\n\x0e_allocation_id"K\n\x1fGetDesiredExecutorStatesRequest\x12\x18\n\x0b\x65xecutor_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_executor_id"\xb9\x01\n\x14\x44\x65siredExecutorState\x12H\n\x12\x66unction_executors\x18\x01 \x03(\x0b\x32,.executor_api_pb.FunctionExecutorDescription\x12\x39\n\x10task_allocations\x18\x02 \x03(\x0b\x32\x1f.executor_api_pb.TaskAllocation\x12\x12\n\x05\x63lock\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x08\n\x06_clock"\'\n\rResultRouting\x12\x16\n\x0enext_functions\x18\x01 \x03(\t"\xd3\x05\n\nTaskResult\x12\x14\n\x07task_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tnamespace\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x17\n\ngraph_name\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\rfunction_name\x18\x04 \x01(\tH\x03\x88\x01\x01\x12 \n\x13graph_invocation_id\x18\x05 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x07reducer\x18\x06 \x01(\x08H\x05\x88\x01\x01\x12;\n\x0coutcome_code\x18\x07 \x01(\x0e\x32 .executor_api_pb.TaskOutcomeCodeH\x06\x88\x01\x01\x12?\n\x0e\x66\x61ilure_reason\x18\x08 \x01(\x0e\x32".executor_api_pb.TaskFailureReasonH\x07\x88\x01\x01\x12\x16\n\x0enext_functions\x18\t \x03(\t\x12\x36\n\x10\x66unction_outputs\x18\n \x03(\x0b\x32\x1c.executor_api_pb.DataPayload\x12\x31\n\x06stdout\x18\x0b \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\x08\x88\x01\x01\x12\x31\n\x06stderr\x18\x0c \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\t\x88\x01\x01\x12\x1a\n\rallocation_id\x18\r \x01(\tH\n\x88\x01\x01\x12/\n\x07routing\x18\x0e \x01(\x0b\x32\x1e.executor_api_pb.ResultRoutingB\n\n\x08_task_idB\x0c\n\n_namespaceB\r\n\x0b_graph_nameB\x10\n\x0e_function_nameB\x16\n\x14_graph_invocation_idB\n\n\x08_reducerB\x0f\n\r_outcome_codeB\x11\n\x0f_failure_reasonB\t\n\x07_stdoutB\t\n\x07_stderrB\x10\n\x0e_allocation_id*\xab\x01\n\x13\x44\x61taPayloadEncoding\x12!\n\x1d\x44\x41TA_PAYLOAD_ENCODING_UNKNOWN\x10\x00\x12#\n\x1f\x44\x41TA_PAYLOAD_ENCODING_UTF8_JSON\x10\x01\x12#\n\x1f\x44\x41TA_PAYLOAD_ENCODING_UTF8_TEXT\x10\x02\x12\'\n#DATA_PAYLOAD_ENCODING_BINARY_PICKLE\x10\x03*\xd6\x01\n\x08GPUModel\x12\x15\n\x11GPU_MODEL_UNKNOWN\x10\x00\x12\x1e\n\x1aGPU_MODEL_NVIDIA_A100_40GB\x10\x01\x12\x1e\n\x1aGPU_MODEL_NVIDIA_A100_80GB\x10\x02\x12\x1e\n\x1aGPU_MODEL_NVIDIA_H100_80GB\x10\x03\x12\x1d\n\x19GPU_MODEL_NVIDIA_TESLA_T4\x10\x04\x12\x1a\n\x16GPU_MODEL_NVIDIA_A6000\x10\x05\x12\x18\n\x14GPU_MODEL_NVIDIA_A10\x10\x06*\xb3\x01\n\x16\x46unctionExecutorStatus\x12$\n FUNCTION_EXECUTOR_STATUS_UNKNOWN\x10\x00\x12$\n FUNCTION_EXECUTOR_STATUS_PENDING\x10\x01\x12$\n FUNCTION_EXECUTOR_STATUS_RUNNING\x10\x02\x12\'\n#FUNCTION_EXECUTOR_STATUS_TERMINATED\x10\x03*\x95\x05\n!FunctionExecutorTerminationReason\x12\x30\n,FUNCTION_EXECUTOR_TERMINATION_REASON_UNKNOWN\x10\x00\x12\x46\nBFUNCTION_EXECUTOR_TERMINATION_REASON_STARTUP_FAILED_INTERNAL_ERROR\x10\x01\x12\x46\nBFUNCTION_EXECUTOR_TERMINATION_REASON_STARTUP_FAILED_FUNCTION_ERROR\x10\x02\x12H\nDFUNCTION_EXECUTOR_TERMINATION_REASON_STARTUP_FAILED_FUNCTION_TIMEOUT\x10\x03\x12:\n6FUNCTION_EXECUTOR_TERMINATION_REASON_EXECUTOR_SHUTDOWN\x10\n\x12\x43\n?FUNCTION_EXECUTOR_TERMINATION_REASON_REMOVED_FROM_DESIRED_STATE\x10\x0b\x12\x32\n.FUNCTION_EXECUTOR_TERMINATION_REASON_UNHEALTHY\x10\x0c\x12\x37\n3FUNCTION_EXECUTOR_TERMINATION_REASON_INTERNAL_ERROR\x10\r\x12\x39\n5FUNCTION_EXECUTOR_TERMINATION_REASON_FUNCTION_TIMEOUT\x10\x0e\x12;\n7FUNCTION_EXECUTOR_TERMINATION_REASON_FUNCTION_CANCELLED\x10\x0f*\xa5\x01\n\x0e\x45xecutorStatus\x12\x1b\n\x17\x45XECUTOR_STATUS_UNKNOWN\x10\x00\x12\x1f\n\x1b\x45XECUTOR_STATUS_STARTING_UP\x10\x01\x12\x1b\n\x17\x45XECUTOR_STATUS_RUNNING\x10\x02\x12\x1b\n\x17\x45XECUTOR_STATUS_DRAINED\x10\x03\x12\x1b\n\x17\x45XECUTOR_STATUS_STOPPED\x10\x04*n\n\x0fTaskOutcomeCode\x12\x1d\n\x19TASK_OUTCOME_CODE_UNKNOWN\x10\x00\x12\x1d\n\x19TASK_OUTCOME_CODE_SUCCESS\x10\x01\x12\x1d\n\x19TASK_OUTCOME_CODE_FAILURE\x10\x02*\x8c\x02\n\x11TaskFailureReason\x12\x1f\n\x1bTASK_FAILURE_REASON_UNKNOWN\x10\x00\x12&\n"TASK_FAILURE_REASON_INTERNAL_ERROR\x10\x01\x12&\n"TASK_FAILURE_REASON_FUNCTION_ERROR\x10\x02\x12(\n$TASK_FAILURE_REASON_FUNCTION_TIMEOUT\x10\x03\x12&\n"TASK_FAILURE_REASON_TASK_CANCELLED\x10\x04\x12\x34\n0TASK_FAILURE_REASON_FUNCTION_EXECUTOR_TERMINATED\x10\x05\x32\xff\x01\n\x0b\x45xecutorAPI\x12t\n\x15report_executor_state\x12+.executor_api_pb.ReportExecutorStateRequest\x1a,.executor_api_pb.ReportExecutorStateResponse"\x00\x12z\n\x1bget_desired_executor_states\x12\x30.executor_api_pb.GetDesiredExecutorStatesRequest\x1a%.executor_api_pb.DesiredExecutorState"\x00\x30\x01\x62\x06proto3'
23
+ )
24
+
25
+ _globals = globals()
26
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
27
+ _builder.BuildTopDescriptorsAndMessages(
28
+ DESCRIPTOR, "indexify.proto.executor_api_pb2", _globals
29
+ )
30
+ if not _descriptor._USE_C_DESCRIPTORS:
31
+ DESCRIPTOR._loaded_options = None
32
+ _globals["_EXECUTORSTATE_LABELSENTRY"]._loaded_options = None
33
+ _globals["_EXECUTORSTATE_LABELSENTRY"]._serialized_options = b"8\001"
34
+ _globals["_DATAPAYLOADENCODING"]._serialized_start = 4710
35
+ _globals["_DATAPAYLOADENCODING"]._serialized_end = 4881
36
+ _globals["_GPUMODEL"]._serialized_start = 4884
37
+ _globals["_GPUMODEL"]._serialized_end = 5098
38
+ _globals["_FUNCTIONEXECUTORSTATUS"]._serialized_start = 5101
39
+ _globals["_FUNCTIONEXECUTORSTATUS"]._serialized_end = 5280
40
+ _globals["_FUNCTIONEXECUTORTERMINATIONREASON"]._serialized_start = 5283
41
+ _globals["_FUNCTIONEXECUTORTERMINATIONREASON"]._serialized_end = 5944
42
+ _globals["_EXECUTORSTATUS"]._serialized_start = 5947
43
+ _globals["_EXECUTORSTATUS"]._serialized_end = 6112
44
+ _globals["_TASKOUTCOMECODE"]._serialized_start = 6114
45
+ _globals["_TASKOUTCOMECODE"]._serialized_end = 6224
46
+ _globals["_TASKFAILUREREASON"]._serialized_start = 6227
47
+ _globals["_TASKFAILUREREASON"]._serialized_end = 6495
48
+ _globals["_DATAPAYLOAD"]._serialized_start = 55
49
+ _globals["_DATAPAYLOAD"]._serialized_end = 290
50
+ _globals["_GPURESOURCES"]._serialized_start = 292
51
+ _globals["_GPURESOURCES"]._serialized_end = 393
52
+ _globals["_HOSTRESOURCES"]._serialized_start = 396
53
+ _globals["_HOSTRESOURCES"]._serialized_end = 590
54
+ _globals["_ALLOWEDFUNCTION"]._serialized_start = 593
55
+ _globals["_ALLOWEDFUNCTION"]._serialized_end = 780
56
+ _globals["_FUNCTIONEXECUTORRESOURCES"]._serialized_start = 783
57
+ _globals["_FUNCTIONEXECUTORRESOURCES"]._serialized_end = 999
58
+ _globals["_FUNCTIONEXECUTORDESCRIPTION"]._serialized_start = 1002
59
+ _globals["_FUNCTIONEXECUTORDESCRIPTION"]._serialized_end = 1495
60
+ _globals["_FUNCTIONEXECUTORSTATE"]._serialized_start = 1498
61
+ _globals["_FUNCTIONEXECUTORSTATE"]._serialized_end = 1790
62
+ _globals["_EXECUTORSTATE"]._serialized_start = 1793
63
+ _globals["_EXECUTORSTATE"]._serialized_end = 2511
64
+ _globals["_EXECUTORSTATE_LABELSENTRY"]._serialized_start = 2324
65
+ _globals["_EXECUTORSTATE_LABELSENTRY"]._serialized_end = 2369
66
+ _globals["_REPORTEXECUTORSTATEREQUEST"]._serialized_start = 2514
67
+ _globals["_REPORTEXECUTORSTATEREQUEST"]._serialized_end = 2673
68
+ _globals["_REPORTEXECUTORSTATERESPONSE"]._serialized_start = 2675
69
+ _globals["_REPORTEXECUTORSTATERESPONSE"]._serialized_end = 2704
70
+ _globals["_TASKRETRYPOLICY"]._serialized_start = 2707
71
+ _globals["_TASKRETRYPOLICY"]._serialized_end = 2914
72
+ _globals["_TASK"]._serialized_start = 2917
73
+ _globals["_TASK"]._serialized_end = 3499
74
+ _globals["_TASKALLOCATION"]._serialized_start = 3502
75
+ _globals["_TASKALLOCATION"]._serialized_end = 3675
76
+ _globals["_GETDESIREDEXECUTORSTATESREQUEST"]._serialized_start = 3677
77
+ _globals["_GETDESIREDEXECUTORSTATESREQUEST"]._serialized_end = 3752
78
+ _globals["_DESIREDEXECUTORSTATE"]._serialized_start = 3755
79
+ _globals["_DESIREDEXECUTORSTATE"]._serialized_end = 3940
80
+ _globals["_RESULTROUTING"]._serialized_start = 3942
81
+ _globals["_RESULTROUTING"]._serialized_end = 3981
82
+ _globals["_TASKRESULT"]._serialized_start = 3984
83
+ _globals["_TASKRESULT"]._serialized_end = 4707
84
+ _globals["_EXECUTORAPI"]._serialized_start = 6498
85
+ _globals["_EXECUTORAPI"]._serialized_end = 6753
86
+ # @@protoc_insertion_point(module_scope)
@@ -213,21 +213,21 @@ class AllowedFunction(_message.Message):
213
213
  ) -> None: ...
214
214
 
215
215
  class FunctionExecutorResources(_message.Message):
216
- __slots__ = ("cpu_ms_per_sec", "memory_bytes", "disk_bytes", "gpu_count")
216
+ __slots__ = ("cpu_ms_per_sec", "memory_bytes", "disk_bytes", "gpu")
217
217
  CPU_MS_PER_SEC_FIELD_NUMBER: _ClassVar[int]
218
218
  MEMORY_BYTES_FIELD_NUMBER: _ClassVar[int]
219
219
  DISK_BYTES_FIELD_NUMBER: _ClassVar[int]
220
- GPU_COUNT_FIELD_NUMBER: _ClassVar[int]
220
+ GPU_FIELD_NUMBER: _ClassVar[int]
221
221
  cpu_ms_per_sec: int
222
222
  memory_bytes: int
223
223
  disk_bytes: int
224
- gpu_count: int
224
+ gpu: GPUResources
225
225
  def __init__(
226
226
  self,
227
227
  cpu_ms_per_sec: _Optional[int] = ...,
228
228
  memory_bytes: _Optional[int] = ...,
229
229
  disk_bytes: _Optional[int] = ...,
230
- gpu_count: _Optional[int] = ...,
230
+ gpu: _Optional[_Union[GPUResources, _Mapping]] = ...,
231
231
  ) -> None: ...
232
232
 
233
233
  class FunctionExecutorDescription(_message.Message):
@@ -1,86 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # Generated by the protocol buffer compiler. DO NOT EDIT!
3
- # NO CHECKED-IN PROTOBUF GENCODE
4
- # source: indexify/proto/executor_api.proto
5
- # Protobuf Python Version: 5.29.0
6
- """Generated protocol buffer code."""
7
- from google.protobuf import descriptor as _descriptor
8
- from google.protobuf import descriptor_pool as _descriptor_pool
9
- from google.protobuf import runtime_version as _runtime_version
10
- from google.protobuf import symbol_database as _symbol_database
11
- from google.protobuf.internal import builder as _builder
12
-
13
- _runtime_version.ValidateProtobufRuntimeVersion(
14
- _runtime_version.Domain.PUBLIC, 5, 29, 0, "", "indexify/proto/executor_api.proto"
15
- )
16
- # @@protoc_insertion_point(imports)
17
-
18
- _sym_db = _symbol_database.Default()
19
-
20
-
21
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(
22
- b'\n!indexify/proto/executor_api.proto\x12\x0f\x65xecutor_api_pb"\xeb\x01\n\x0b\x44\x61taPayload\x12\x11\n\x04size\x18\x02 \x01(\x04H\x00\x88\x01\x01\x12\x18\n\x0bsha256_hash\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x03uri\x18\x04 \x01(\tH\x02\x88\x01\x01\x12;\n\x08\x65ncoding\x18\x05 \x01(\x0e\x32$.executor_api_pb.DataPayloadEncodingH\x03\x88\x01\x01\x12\x1d\n\x10\x65ncoding_version\x18\x06 \x01(\x04H\x04\x88\x01\x01\x42\x07\n\x05_sizeB\x0e\n\x0c_sha256_hashB\x06\n\x04_uriB\x0b\n\t_encodingB\x13\n\x11_encoding_version"e\n\x0cGPUResources\x12\x12\n\x05\x63ount\x18\x01 \x01(\rH\x00\x88\x01\x01\x12-\n\x05model\x18\x02 \x01(\x0e\x32\x19.executor_api_pb.GPUModelH\x01\x88\x01\x01\x42\x08\n\x06_countB\x08\n\x06_model"\xc2\x01\n\rHostResources\x12\x16\n\tcpu_count\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x19\n\x0cmemory_bytes\x18\x02 \x01(\x04H\x01\x88\x01\x01\x12\x17\n\ndisk_bytes\x18\x03 \x01(\x04H\x02\x88\x01\x01\x12/\n\x03gpu\x18\x04 \x01(\x0b\x32\x1d.executor_api_pb.GPUResourcesH\x03\x88\x01\x01\x42\x0c\n\n_cpu_countB\x0f\n\r_memory_bytesB\r\n\x0b_disk_bytesB\x06\n\x04_gpu"\xbb\x01\n\x0f\x41llowedFunction\x12\x16\n\tnamespace\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\ngraph_name\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x1a\n\rfunction_name\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\rgraph_version\x18\x04 \x01(\tH\x03\x88\x01\x01\x42\x0c\n\n_namespaceB\r\n\x0b_graph_nameB\x10\n\x0e_function_nameB\x10\n\x0e_graph_version"\xc5\x01\n\x19\x46unctionExecutorResources\x12\x1b\n\x0e\x63pu_ms_per_sec\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x19\n\x0cmemory_bytes\x18\x02 \x01(\x04H\x01\x88\x01\x01\x12\x17\n\ndisk_bytes\x18\x03 \x01(\x04H\x02\x88\x01\x01\x12\x16\n\tgpu_count\x18\x04 \x01(\rH\x03\x88\x01\x01\x42\x11\n\x0f_cpu_ms_per_secB\x0f\n\r_memory_bytesB\r\n\x0b_disk_bytesB\x0c\n\n_gpu_count"\xed\x03\n\x1b\x46unctionExecutorDescription\x12\x0f\n\x02id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tnamespace\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x17\n\ngraph_name\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\rgraph_version\x18\x04 \x01(\tH\x03\x88\x01\x01\x12\x1a\n\rfunction_name\x18\x05 \x01(\tH\x04\x88\x01\x01\x12\x16\n\timage_uri\x18\x06 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x0csecret_names\x18\x07 \x03(\t\x12%\n\x18\x63ustomer_code_timeout_ms\x18\t \x01(\rH\x06\x88\x01\x01\x12\x30\n\x05graph\x18\n \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\x07\x88\x01\x01\x12\x42\n\tresources\x18\x0b \x01(\x0b\x32*.executor_api_pb.FunctionExecutorResourcesH\x08\x88\x01\x01\x42\x05\n\x03_idB\x0c\n\n_namespaceB\r\n\x0b_graph_nameB\x10\n\x0e_graph_versionB\x10\n\x0e_function_nameB\x0c\n\n_image_uriB\x1b\n\x19_customer_code_timeout_msB\x08\n\x06_graphB\x0c\n\n_resources"\xa4\x02\n\x15\x46unctionExecutorState\x12\x46\n\x0b\x64\x65scription\x18\x01 \x01(\x0b\x32,.executor_api_pb.FunctionExecutorDescriptionH\x00\x88\x01\x01\x12<\n\x06status\x18\x02 \x01(\x0e\x32\'.executor_api_pb.FunctionExecutorStatusH\x01\x88\x01\x01\x12S\n\x12termination_reason\x18\x03 \x01(\x0e\x32\x32.executor_api_pb.FunctionExecutorTerminationReasonH\x02\x88\x01\x01\x42\x0e\n\x0c_descriptionB\t\n\x07_statusB\x15\n\x13_termination_reason"\xce\x05\n\rExecutorState\x12\x18\n\x0b\x65xecutor_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x08hostname\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x14\n\x07version\x18\x05 \x01(\tH\x02\x88\x01\x01\x12\x34\n\x06status\x18\x06 \x01(\x0e\x32\x1f.executor_api_pb.ExecutorStatusH\x03\x88\x01\x01\x12<\n\x0ftotal_resources\x18\r \x01(\x0b\x32\x1e.executor_api_pb.HostResourcesH\x04\x88\x01\x01\x12N\n!total_function_executor_resources\x18\x07 \x01(\x0b\x32\x1e.executor_api_pb.HostResourcesH\x05\x88\x01\x01\x12;\n\x11\x61llowed_functions\x18\x08 \x03(\x0b\x32 .executor_api_pb.AllowedFunction\x12H\n\x18\x66unction_executor_states\x18\t \x03(\x0b\x32&.executor_api_pb.FunctionExecutorState\x12:\n\x06labels\x18\n \x03(\x0b\x32*.executor_api_pb.ExecutorState.LabelsEntry\x12\x17\n\nstate_hash\x18\x0b \x01(\tH\x06\x88\x01\x01\x12\x19\n\x0cserver_clock\x18\x0c \x01(\x04H\x07\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0e\n\x0c_executor_idB\x0b\n\t_hostnameB\n\n\x08_versionB\t\n\x07_statusB\x12\n\x10_total_resourcesB$\n"_total_function_executor_resourcesB\r\n\x0b_state_hashB\x0f\n\r_server_clock"\x9f\x01\n\x1aReportExecutorStateRequest\x12;\n\x0e\x65xecutor_state\x18\x01 \x01(\x0b\x32\x1e.executor_api_pb.ExecutorStateH\x00\x88\x01\x01\x12\x31\n\x0ctask_results\x18\x02 \x03(\x0b\x32\x1b.executor_api_pb.TaskResultB\x11\n\x0f_executor_state"\x1d\n\x1bReportExecutorStateResponse"\xcf\x01\n\x0fTaskRetryPolicy\x12\x18\n\x0bmax_retries\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x1d\n\x10initial_delay_ms\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x19\n\x0cmax_delay_ms\x18\x03 \x01(\rH\x02\x88\x01\x01\x12\x1d\n\x10\x64\x65lay_multiplier\x18\x04 \x01(\rH\x03\x88\x01\x01\x42\x0e\n\x0c_max_retriesB\x13\n\x11_initial_delay_msB\x0f\n\r_max_delay_msB\x13\n\x11_delay_multiplier"\xc6\x04\n\x04Task\x12\x0f\n\x02id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tnamespace\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x17\n\ngraph_name\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\rgraph_version\x18\x04 \x01(\tH\x03\x88\x01\x01\x12\x1a\n\rfunction_name\x18\x05 \x01(\tH\x04\x88\x01\x01\x12 \n\x13graph_invocation_id\x18\x06 \x01(\tH\x05\x88\x01\x01\x12\x17\n\ntimeout_ms\x18\n \x01(\rH\x06\x88\x01\x01\x12\x30\n\x05input\x18\x0b \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\x07\x88\x01\x01\x12\x38\n\rreducer_input\x18\x0c \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\x08\x88\x01\x01\x12&\n\x19output_payload_uri_prefix\x18\r \x01(\tH\t\x88\x01\x01\x12;\n\x0cretry_policy\x18\x0e \x01(\x0b\x32 .executor_api_pb.TaskRetryPolicyH\n\x88\x01\x01\x42\x05\n\x03_idB\x0c\n\n_namespaceB\r\n\x0b_graph_nameB\x10\n\x0e_graph_versionB\x10\n\x0e_function_nameB\x16\n\x14_graph_invocation_idB\r\n\x0b_timeout_msB\x08\n\x06_inputB\x10\n\x0e_reducer_inputB\x1c\n\x1a_output_payload_uri_prefixB\x0f\n\r_retry_policy"\xad\x01\n\x0eTaskAllocation\x12!\n\x14\x66unction_executor_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12(\n\x04task\x18\x02 \x01(\x0b\x32\x15.executor_api_pb.TaskH\x01\x88\x01\x01\x12\x1a\n\rallocation_id\x18\x03 \x01(\tH\x02\x88\x01\x01\x42\x17\n\x15_function_executor_idB\x07\n\x05_taskB\x10\n\x0e_allocation_id"K\n\x1fGetDesiredExecutorStatesRequest\x12\x18\n\x0b\x65xecutor_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_executor_id"\xb9\x01\n\x14\x44\x65siredExecutorState\x12H\n\x12\x66unction_executors\x18\x01 \x03(\x0b\x32,.executor_api_pb.FunctionExecutorDescription\x12\x39\n\x10task_allocations\x18\x02 \x03(\x0b\x32\x1f.executor_api_pb.TaskAllocation\x12\x12\n\x05\x63lock\x18\x03 \x01(\x04H\x00\x88\x01\x01\x42\x08\n\x06_clock"\'\n\rResultRouting\x12\x16\n\x0enext_functions\x18\x01 \x03(\t"\xd3\x05\n\nTaskResult\x12\x14\n\x07task_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tnamespace\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x17\n\ngraph_name\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\rfunction_name\x18\x04 \x01(\tH\x03\x88\x01\x01\x12 \n\x13graph_invocation_id\x18\x05 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x07reducer\x18\x06 \x01(\x08H\x05\x88\x01\x01\x12;\n\x0coutcome_code\x18\x07 \x01(\x0e\x32 .executor_api_pb.TaskOutcomeCodeH\x06\x88\x01\x01\x12?\n\x0e\x66\x61ilure_reason\x18\x08 \x01(\x0e\x32".executor_api_pb.TaskFailureReasonH\x07\x88\x01\x01\x12\x16\n\x0enext_functions\x18\t \x03(\t\x12\x36\n\x10\x66unction_outputs\x18\n \x03(\x0b\x32\x1c.executor_api_pb.DataPayload\x12\x31\n\x06stdout\x18\x0b \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\x08\x88\x01\x01\x12\x31\n\x06stderr\x18\x0c \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\t\x88\x01\x01\x12\x1a\n\rallocation_id\x18\r \x01(\tH\n\x88\x01\x01\x12/\n\x07routing\x18\x0e \x01(\x0b\x32\x1e.executor_api_pb.ResultRoutingB\n\n\x08_task_idB\x0c\n\n_namespaceB\r\n\x0b_graph_nameB\x10\n\x0e_function_nameB\x16\n\x14_graph_invocation_idB\n\n\x08_reducerB\x0f\n\r_outcome_codeB\x11\n\x0f_failure_reasonB\t\n\x07_stdoutB\t\n\x07_stderrB\x10\n\x0e_allocation_id*\xab\x01\n\x13\x44\x61taPayloadEncoding\x12!\n\x1d\x44\x41TA_PAYLOAD_ENCODING_UNKNOWN\x10\x00\x12#\n\x1f\x44\x41TA_PAYLOAD_ENCODING_UTF8_JSON\x10\x01\x12#\n\x1f\x44\x41TA_PAYLOAD_ENCODING_UTF8_TEXT\x10\x02\x12\'\n#DATA_PAYLOAD_ENCODING_BINARY_PICKLE\x10\x03*\xd6\x01\n\x08GPUModel\x12\x15\n\x11GPU_MODEL_UNKNOWN\x10\x00\x12\x1e\n\x1aGPU_MODEL_NVIDIA_A100_40GB\x10\x01\x12\x1e\n\x1aGPU_MODEL_NVIDIA_A100_80GB\x10\x02\x12\x1e\n\x1aGPU_MODEL_NVIDIA_H100_80GB\x10\x03\x12\x1d\n\x19GPU_MODEL_NVIDIA_TESLA_T4\x10\x04\x12\x1a\n\x16GPU_MODEL_NVIDIA_A6000\x10\x05\x12\x18\n\x14GPU_MODEL_NVIDIA_A10\x10\x06*\xb3\x01\n\x16\x46unctionExecutorStatus\x12$\n FUNCTION_EXECUTOR_STATUS_UNKNOWN\x10\x00\x12$\n FUNCTION_EXECUTOR_STATUS_PENDING\x10\x01\x12$\n FUNCTION_EXECUTOR_STATUS_RUNNING\x10\x02\x12\'\n#FUNCTION_EXECUTOR_STATUS_TERMINATED\x10\x03*\x95\x05\n!FunctionExecutorTerminationReason\x12\x30\n,FUNCTION_EXECUTOR_TERMINATION_REASON_UNKNOWN\x10\x00\x12\x46\nBFUNCTION_EXECUTOR_TERMINATION_REASON_STARTUP_FAILED_INTERNAL_ERROR\x10\x01\x12\x46\nBFUNCTION_EXECUTOR_TERMINATION_REASON_STARTUP_FAILED_FUNCTION_ERROR\x10\x02\x12H\nDFUNCTION_EXECUTOR_TERMINATION_REASON_STARTUP_FAILED_FUNCTION_TIMEOUT\x10\x03\x12:\n6FUNCTION_EXECUTOR_TERMINATION_REASON_EXECUTOR_SHUTDOWN\x10\n\x12\x43\n?FUNCTION_EXECUTOR_TERMINATION_REASON_REMOVED_FROM_DESIRED_STATE\x10\x0b\x12\x32\n.FUNCTION_EXECUTOR_TERMINATION_REASON_UNHEALTHY\x10\x0c\x12\x37\n3FUNCTION_EXECUTOR_TERMINATION_REASON_INTERNAL_ERROR\x10\r\x12\x39\n5FUNCTION_EXECUTOR_TERMINATION_REASON_FUNCTION_TIMEOUT\x10\x0e\x12;\n7FUNCTION_EXECUTOR_TERMINATION_REASON_FUNCTION_CANCELLED\x10\x0f*\xa5\x01\n\x0e\x45xecutorStatus\x12\x1b\n\x17\x45XECUTOR_STATUS_UNKNOWN\x10\x00\x12\x1f\n\x1b\x45XECUTOR_STATUS_STARTING_UP\x10\x01\x12\x1b\n\x17\x45XECUTOR_STATUS_RUNNING\x10\x02\x12\x1b\n\x17\x45XECUTOR_STATUS_DRAINED\x10\x03\x12\x1b\n\x17\x45XECUTOR_STATUS_STOPPED\x10\x04*n\n\x0fTaskOutcomeCode\x12\x1d\n\x19TASK_OUTCOME_CODE_UNKNOWN\x10\x00\x12\x1d\n\x19TASK_OUTCOME_CODE_SUCCESS\x10\x01\x12\x1d\n\x19TASK_OUTCOME_CODE_FAILURE\x10\x02*\x8c\x02\n\x11TaskFailureReason\x12\x1f\n\x1bTASK_FAILURE_REASON_UNKNOWN\x10\x00\x12&\n"TASK_FAILURE_REASON_INTERNAL_ERROR\x10\x01\x12&\n"TASK_FAILURE_REASON_FUNCTION_ERROR\x10\x02\x12(\n$TASK_FAILURE_REASON_FUNCTION_TIMEOUT\x10\x03\x12&\n"TASK_FAILURE_REASON_TASK_CANCELLED\x10\x04\x12\x34\n0TASK_FAILURE_REASON_FUNCTION_EXECUTOR_TERMINATED\x10\x05\x32\xff\x01\n\x0b\x45xecutorAPI\x12t\n\x15report_executor_state\x12+.executor_api_pb.ReportExecutorStateRequest\x1a,.executor_api_pb.ReportExecutorStateResponse"\x00\x12z\n\x1bget_desired_executor_states\x12\x30.executor_api_pb.GetDesiredExecutorStatesRequest\x1a%.executor_api_pb.DesiredExecutorState"\x00\x30\x01\x62\x06proto3'
23
- )
24
-
25
- _globals = globals()
26
- _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
27
- _builder.BuildTopDescriptorsAndMessages(
28
- DESCRIPTOR, "indexify.proto.executor_api_pb2", _globals
29
- )
30
- if not _descriptor._USE_C_DESCRIPTORS:
31
- DESCRIPTOR._loaded_options = None
32
- _globals["_EXECUTORSTATE_LABELSENTRY"]._loaded_options = None
33
- _globals["_EXECUTORSTATE_LABELSENTRY"]._serialized_options = b"8\001"
34
- _globals["_DATAPAYLOADENCODING"]._serialized_start = 4691
35
- _globals["_DATAPAYLOADENCODING"]._serialized_end = 4862
36
- _globals["_GPUMODEL"]._serialized_start = 4865
37
- _globals["_GPUMODEL"]._serialized_end = 5079
38
- _globals["_FUNCTIONEXECUTORSTATUS"]._serialized_start = 5082
39
- _globals["_FUNCTIONEXECUTORSTATUS"]._serialized_end = 5261
40
- _globals["_FUNCTIONEXECUTORTERMINATIONREASON"]._serialized_start = 5264
41
- _globals["_FUNCTIONEXECUTORTERMINATIONREASON"]._serialized_end = 5925
42
- _globals["_EXECUTORSTATUS"]._serialized_start = 5928
43
- _globals["_EXECUTORSTATUS"]._serialized_end = 6093
44
- _globals["_TASKOUTCOMECODE"]._serialized_start = 6095
45
- _globals["_TASKOUTCOMECODE"]._serialized_end = 6205
46
- _globals["_TASKFAILUREREASON"]._serialized_start = 6208
47
- _globals["_TASKFAILUREREASON"]._serialized_end = 6476
48
- _globals["_DATAPAYLOAD"]._serialized_start = 55
49
- _globals["_DATAPAYLOAD"]._serialized_end = 290
50
- _globals["_GPURESOURCES"]._serialized_start = 292
51
- _globals["_GPURESOURCES"]._serialized_end = 393
52
- _globals["_HOSTRESOURCES"]._serialized_start = 396
53
- _globals["_HOSTRESOURCES"]._serialized_end = 590
54
- _globals["_ALLOWEDFUNCTION"]._serialized_start = 593
55
- _globals["_ALLOWEDFUNCTION"]._serialized_end = 780
56
- _globals["_FUNCTIONEXECUTORRESOURCES"]._serialized_start = 783
57
- _globals["_FUNCTIONEXECUTORRESOURCES"]._serialized_end = 980
58
- _globals["_FUNCTIONEXECUTORDESCRIPTION"]._serialized_start = 983
59
- _globals["_FUNCTIONEXECUTORDESCRIPTION"]._serialized_end = 1476
60
- _globals["_FUNCTIONEXECUTORSTATE"]._serialized_start = 1479
61
- _globals["_FUNCTIONEXECUTORSTATE"]._serialized_end = 1771
62
- _globals["_EXECUTORSTATE"]._serialized_start = 1774
63
- _globals["_EXECUTORSTATE"]._serialized_end = 2492
64
- _globals["_EXECUTORSTATE_LABELSENTRY"]._serialized_start = 2305
65
- _globals["_EXECUTORSTATE_LABELSENTRY"]._serialized_end = 2350
66
- _globals["_REPORTEXECUTORSTATEREQUEST"]._serialized_start = 2495
67
- _globals["_REPORTEXECUTORSTATEREQUEST"]._serialized_end = 2654
68
- _globals["_REPORTEXECUTORSTATERESPONSE"]._serialized_start = 2656
69
- _globals["_REPORTEXECUTORSTATERESPONSE"]._serialized_end = 2685
70
- _globals["_TASKRETRYPOLICY"]._serialized_start = 2688
71
- _globals["_TASKRETRYPOLICY"]._serialized_end = 2895
72
- _globals["_TASK"]._serialized_start = 2898
73
- _globals["_TASK"]._serialized_end = 3480
74
- _globals["_TASKALLOCATION"]._serialized_start = 3483
75
- _globals["_TASKALLOCATION"]._serialized_end = 3656
76
- _globals["_GETDESIREDEXECUTORSTATESREQUEST"]._serialized_start = 3658
77
- _globals["_GETDESIREDEXECUTORSTATESREQUEST"]._serialized_end = 3733
78
- _globals["_DESIREDEXECUTORSTATE"]._serialized_start = 3736
79
- _globals["_DESIREDEXECUTORSTATE"]._serialized_end = 3921
80
- _globals["_RESULTROUTING"]._serialized_start = 3923
81
- _globals["_RESULTROUTING"]._serialized_end = 3962
82
- _globals["_TASKRESULT"]._serialized_start = 3965
83
- _globals["_TASKRESULT"]._serialized_end = 4688
84
- _globals["_EXECUTORAPI"]._serialized_start = 6479
85
- _globals["_EXECUTORAPI"]._serialized_end = 6734
86
- # @@protoc_insertion_point(module_scope)
File without changes