indexify 0.3.22__py3-none-any.whl → 0.3.23__py3-none-any.whl
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.
- indexify/executor/api_objects.py +22 -0
- indexify/executor/function_executor/server/function_executor_server_factory.py +4 -0
- indexify/executor/function_executor/single_task_runner.py +24 -6
- indexify/executor/grpc/function_executor_controller.py +20 -2
- indexify/proto/executor_api.proto +19 -0
- indexify/proto/executor_api_pb2.py +45 -41
- indexify/proto/executor_api_pb2.pyi +44 -0
- {indexify-0.3.22.dist-info → indexify-0.3.23.dist-info}/METADATA +1 -1
- {indexify-0.3.22.dist-info → indexify-0.3.23.dist-info}/RECORD +11 -11
- {indexify-0.3.22.dist-info → indexify-0.3.23.dist-info}/WHEEL +0 -0
- {indexify-0.3.22.dist-info → indexify-0.3.23.dist-info}/entry_points.txt +0 -0
indexify/executor/api_objects.py
CHANGED
@@ -10,6 +10,25 @@ class DataPayload(BaseModel):
|
|
10
10
|
content_type: Optional[str] = None
|
11
11
|
|
12
12
|
|
13
|
+
class NodeGPU(BaseModel):
|
14
|
+
count: int
|
15
|
+
model: str
|
16
|
+
|
17
|
+
|
18
|
+
class TaskResources(BaseModel):
|
19
|
+
cpus: float
|
20
|
+
memory_mb: int
|
21
|
+
ephemeral_disk_mb: int
|
22
|
+
gpu: Optional[NodeGPU] = None
|
23
|
+
|
24
|
+
|
25
|
+
class TaskRetryPolicy(BaseModel):
|
26
|
+
max_retries: int
|
27
|
+
initial_delay_sec: float
|
28
|
+
max_delay_sec: float
|
29
|
+
delay_multiplier: float
|
30
|
+
|
31
|
+
|
13
32
|
class Task(BaseModel):
|
14
33
|
id: str
|
15
34
|
namespace: str
|
@@ -27,6 +46,9 @@ class Task(BaseModel):
|
|
27
46
|
input_payload: Optional[DataPayload] = None
|
28
47
|
reducer_input_payload: Optional[DataPayload] = None
|
29
48
|
output_payload_uri_prefix: Optional[str] = None
|
49
|
+
timeout: Optional[int] = None # in seconds
|
50
|
+
resources: Optional[TaskResources] = None
|
51
|
+
retry_policy: Optional[TaskRetryPolicy] = None
|
30
52
|
|
31
53
|
|
32
54
|
class FunctionURI(BaseModel):
|
@@ -24,6 +24,10 @@ class FunctionExecutorServerConfiguration:
|
|
24
24
|
graph_version: str
|
25
25
|
image_uri: Optional[str]
|
26
26
|
secret_names: List[str]
|
27
|
+
cpu_ms_per_sec: Optional[int]
|
28
|
+
memory_bytes: Optional[int]
|
29
|
+
disk_bytes: Optional[int]
|
30
|
+
gpu_count: int
|
27
31
|
|
28
32
|
|
29
33
|
class FunctionExecutorServerFactory:
|
@@ -1,4 +1,5 @@
|
|
1
1
|
from collections.abc import Awaitable, Callable
|
2
|
+
from math import ceil
|
2
3
|
from typing import Any, Optional
|
3
4
|
|
4
5
|
import grpc
|
@@ -131,16 +132,33 @@ class SingleTaskRunner:
|
|
131
132
|
self._function_executor_state.function_executor = FunctionExecutor(
|
132
133
|
server_factory=self._function_executor_server_factory, logger=self._logger
|
133
134
|
)
|
135
|
+
task: Task = self._task_input.task
|
134
136
|
config: FunctionExecutorServerConfiguration = (
|
135
137
|
FunctionExecutorServerConfiguration(
|
136
138
|
executor_id=self._executor_id,
|
137
139
|
function_executor_id=self._function_executor_state.id,
|
138
|
-
namespace=
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
140
|
+
namespace=task.namespace,
|
141
|
+
graph_name=task.compute_graph,
|
142
|
+
graph_version=task.graph_version,
|
143
|
+
function_name=task.compute_fn,
|
144
|
+
image_uri=task.image_uri,
|
145
|
+
secret_names=task.secret_names or [],
|
146
|
+
cpu_ms_per_sec=(
|
147
|
+
None
|
148
|
+
if task.resources.cpus is None
|
149
|
+
else ceil(task.resources.cpus * 1000)
|
150
|
+
),
|
151
|
+
memory_bytes=(
|
152
|
+
None
|
153
|
+
if task.resources.memory_mb is None
|
154
|
+
else task.resources.memory_mb * 1024 * 1024
|
155
|
+
),
|
156
|
+
disk_bytes=(
|
157
|
+
None
|
158
|
+
if task.resources.ephemeral_disk_mb is None
|
159
|
+
else task.resources.ephemeral_disk_mb * 1024 * 1024
|
160
|
+
),
|
161
|
+
gpu_count=0 if task.resources.gpu is None else task.resources.gpu.count,
|
144
162
|
)
|
145
163
|
)
|
146
164
|
initialize_request: InitializeRequest = InitializeRequest(
|
@@ -9,6 +9,7 @@ from tensorlake.function_executor.proto.message_validator import MessageValidato
|
|
9
9
|
|
10
10
|
from indexify.proto.executor_api_pb2 import (
|
11
11
|
FunctionExecutorDescription,
|
12
|
+
FunctionExecutorResources,
|
12
13
|
)
|
13
14
|
from indexify.proto.executor_api_pb2 import (
|
14
15
|
FunctionExecutorStatus as FunctionExecutorStatusProto,
|
@@ -42,6 +43,13 @@ def validate_function_executor_description(
|
|
42
43
|
# image_uri is optional.
|
43
44
|
# secret_names can be empty.
|
44
45
|
# resource_limits is optional.
|
46
|
+
# TODO: Make resources required after we migrate Server to them.
|
47
|
+
# validator.required_field("resources")
|
48
|
+
# validator = MessageValidator(function_executor_description.resources)
|
49
|
+
# validator.required_field("cpu_ms_per_sec")
|
50
|
+
# validator.required_field("memory_bytes")
|
51
|
+
# validator.required_field("disk_bytes")
|
52
|
+
# validator.required_field("gpu_count")
|
45
53
|
|
46
54
|
|
47
55
|
def function_executor_logger(
|
@@ -333,14 +341,24 @@ async def _create_function_executor(
|
|
333
341
|
executor_id=executor_id,
|
334
342
|
function_executor_id=function_executor_description.id,
|
335
343
|
namespace=function_executor_description.namespace,
|
336
|
-
image_uri=None,
|
337
|
-
secret_names=list(function_executor_description.secret_names),
|
338
344
|
graph_name=function_executor_description.graph_name,
|
339
345
|
graph_version=function_executor_description.graph_version,
|
340
346
|
function_name=function_executor_description.function_name,
|
347
|
+
image_uri=None,
|
348
|
+
secret_names=list(function_executor_description.secret_names),
|
349
|
+
cpu_ms_per_sec=None,
|
350
|
+
memory_bytes=None,
|
351
|
+
disk_bytes=None,
|
352
|
+
gpu_count=0,
|
341
353
|
)
|
342
354
|
if function_executor_description.HasField("image_uri"):
|
343
355
|
config.image_uri = function_executor_description.image_uri
|
356
|
+
if function_executor_description.HasField("resources"):
|
357
|
+
resources: FunctionExecutorResources = function_executor_description.resources
|
358
|
+
config.cpu_ms_per_sec = resources.cpu_ms_per_sec
|
359
|
+
config.memory_bytes = resources.memory_bytes
|
360
|
+
config.disk_bytes = resources.disk_bytes
|
361
|
+
config.gpu_count = resources.gpu_count
|
344
362
|
|
345
363
|
initialize_request: InitializeRequest = InitializeRequest(
|
346
364
|
namespace=function_executor_description.namespace,
|
@@ -83,6 +83,15 @@ enum FunctionExecutorStatus {
|
|
83
83
|
}
|
84
84
|
|
85
85
|
// Immutable information that identifies and describes a Function Executor.
|
86
|
+
message FunctionExecutorResources {
|
87
|
+
// 1000 CPU ms per sec is one full CPU core.
|
88
|
+
// 2000 CPU ms per sec is two full CPU cores.
|
89
|
+
optional uint32 cpu_ms_per_sec = 1;
|
90
|
+
optional uint64 memory_bytes = 2;
|
91
|
+
optional uint64 disk_bytes = 3;
|
92
|
+
optional uint32 gpu_count = 4;
|
93
|
+
}
|
94
|
+
|
86
95
|
message FunctionExecutorDescription {
|
87
96
|
optional string id = 1;
|
88
97
|
optional string namespace = 2;
|
@@ -95,6 +104,7 @@ message FunctionExecutorDescription {
|
|
95
104
|
// Timeout for customer code duration during FE creation.
|
96
105
|
optional uint32 customer_code_timeout_ms = 9;
|
97
106
|
optional DataPayload graph = 10;
|
107
|
+
optional FunctionExecutorResources resources = 11;
|
98
108
|
}
|
99
109
|
|
100
110
|
message FunctionExecutorState {
|
@@ -150,6 +160,14 @@ message ReportExecutorStateResponse {
|
|
150
160
|
}
|
151
161
|
|
152
162
|
// ===== get_desired_executor_states RPC =====
|
163
|
+
message TaskRetryPolicy {
|
164
|
+
optional uint32 max_retries = 1;
|
165
|
+
optional uint32 initial_delay_ms = 2;
|
166
|
+
optional uint32 max_delay_ms = 3;
|
167
|
+
// The multiplier value is 1000x of the actual value to avoid working with floating point.
|
168
|
+
optional uint32 delay_multiplier = 4;
|
169
|
+
}
|
170
|
+
|
153
171
|
message Task {
|
154
172
|
optional string id = 1;
|
155
173
|
optional string namespace = 2;
|
@@ -166,6 +184,7 @@ message Task {
|
|
166
184
|
// S3 URI if the data is stored in S3.
|
167
185
|
// Starts with "file://"" prefix followed by an absolute directory path if the data is stored on a local file system.
|
168
186
|
optional string output_payload_uri_prefix = 13;
|
187
|
+
optional TaskRetryPolicy retry_policy = 14;
|
169
188
|
}
|
170
189
|
|
171
190
|
message TaskAllocation {
|
@@ -19,7 +19,7 @@ _sym_db = _symbol_database.Default()
|
|
19
19
|
|
20
20
|
|
21
21
|
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(
|
22
|
-
b'\n!indexify/proto/executor_api.proto\x12\x0f\x65xecutor_api_pb"\x87\x02\n\x0b\x44\x61taPayload\x12\x11\n\x04path\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04size\x18\x02 \x01(\x04H\x01\x88\x01\x01\x12\x18\n\x0bsha256_hash\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x03uri\x18\x04 \x01(\tH\x03\x88\x01\x01\x12;\n\x08\x65ncoding\x18\x05 \x01(\x0e\x32$.executor_api_pb.DataPayloadEncodingH\x04\x88\x01\x01\x12\x1d\n\x10\x65ncoding_version\x18\x06 \x01(\x04H\x05\x88\x01\x01\x42\x07\n\x05_pathB\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"\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\x0fresource_limits\x18\x08 \x01(\x0b\x32\x1e.executor_api_pb.HostResourcesH\x06\x88\x01\x01\x12%\n\x18\x63ustomer_code_timeout_ms\x18\t \x01(\rH\x07\x88\x01\x01\x12\x30\n\x05graph\x18\n \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\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\x12\n\x10_resource_limitsB\x1b\n\x19_customer_code_timeout_msB\x08\n\x06_graph"\xe8\x01\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\x12\x1b\n\x0estatus_message\x18\x03 \x01(\tH\x02\x88\x01\x01\x42\x0e\n\x0c_descriptionB\t\n\x07_statusB\x11\n\x0f_status_message"\xcb\x05\n\rExecutorState\x12\x18\n\x0b\x65xecutor_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x10\x64\x65velopment_mode\x18\x02 \x01(\x08H\x01\x88\x01\x01\x12\x15\n\x08hostname\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x34\n\x06\x66lavor\x18\x04 \x01(\x0e\x32\x1f.executor_api_pb.ExecutorFlavorH\x03\x88\x01\x01\x12\x14\n\x07version\x18\x05 \x01(\tH\x04\x88\x01\x01\x12\x34\n\x06status\x18\x06 \x01(\x0e\x32\x1f.executor_api_pb.ExecutorStatusH\x05\x88\x01\x01\x12;\n\x0e\x66ree_resources\x18\x07 \x01(\x0b\x32\x1e.executor_api_pb.HostResourcesH\x06\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\x07\x88\x01\x01\x12\x19\n\x0cserver_clock\x18\x0c \x01(\x04H\x08\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\x13\n\x11_development_modeB\x0b\n\t_hostnameB\t\n\x07_flavorB\n\n\x08_versionB\t\n\x07_statusB\x11\n\x0f_free_resourcesB\r\n\x0b_state_hashB\x0f\n\r_server_clock"l\n\x1aReportExecutorStateRequest\x12;\n\x0e\x65xecutor_state\x18\x01 \x01(\x0b\x32\x1e.executor_api_pb.ExecutorStateH\x00\x88\x01\x01\x42\x11\n\x0f_executor_state"\x1d\n\x1bReportExecutorStateResponse"\xd6\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\x16\n\tinput_key\x18\x08 \x01(\tH\x06\x88\x01\x01\x12\x1f\n\x12reducer_output_key\x18\t \x01(\tH\x07\x88\x01\x01\x12\x17\n\ntimeout_ms\x18\n \x01(\rH\x08\x88\x01\x01\x12\x30\n\x05input\x18\x0b \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\t\x88\x01\x01\x12\x38\n\rreducer_input\x18\x0c \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\n\x88\x01\x01\x12&\n\x19output_payload_uri_prefix\x18\r \x01(\tH\x0b\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\x0c\n\n_input_keyB\x15\n\x13_reducer_output_keyB\r\n\x0b_timeout_msB\x08\n\x06_inputB\x10\n\x0e_reducer_inputB\x1c\n\x1a_output_payload_uri_prefix"\x7f\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\x42\x17\n\x15_function_executor_idB\x07\n\x05_task"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"\x87\x06\n\x18ReportTaskOutcomeRequest\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\x06 \x01(\tH\x04\x88\x01\x01\x12\x32\n\x07outcome\x18\x07 \x01(\x0e\x32\x1c.executor_api_pb.TaskOutcomeH\x05\x88\x01\x01\x12\x1a\n\rinvocation_id\x18\x08 \x01(\tH\x06\x88\x01\x01\x12\x18\n\x0b\x65xecutor_id\x18\t \x01(\tH\x07\x88\x01\x01\x12\x14\n\x07reducer\x18\n \x01(\x08H\x08\x88\x01\x01\x12\x16\n\x0enext_functions\x18\x0b \x03(\t\x12\x30\n\nfn_outputs\x18\x0c \x03(\x0b\x32\x1c.executor_api_pb.DataPayload\x12\x31\n\x06stdout\x18\x0e \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\t\x88\x01\x01\x12\x31\n\x06stderr\x18\x0f \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\n\x88\x01\x01\x12=\n\x0foutput_encoding\x18\r \x01(\x0e\x32\x1f.executor_api_pb.OutputEncodingH\x0b\x88\x01\x01\x12$\n\x17output_encoding_version\x18\x05 \x01(\x04H\x0c\x88\x01\x01\x42\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_outcomeB\x10\n\x0e_invocation_idB\x0e\n\x0c_executor_idB\n\n\x08_reducerB\t\n\x07_stdoutB\t\n\x07_stderrB\x12\n\x10_output_encodingB\x1a\n\x18_output_encoding_version"\x1b\n\x19ReportTaskOutcomeResponse*\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*\x86\x03\n\x08GPUModel\x12\x15\n\x11GPU_MODEL_UNKNOWN\x10\x00\x12"\n\x1eGPU_MODEL_NVIDIA_TESLA_T4_16GB\x10\n\x12$\n GPU_MODEL_NVIDIA_TESLA_V100_16GB\x10\x14\x12\x1d\n\x19GPU_MODEL_NVIDIA_A10_24GB\x10\x1e\x12\x1f\n\x1bGPU_MODEL_NVIDIA_A6000_48GB\x10(\x12#\n\x1fGPU_MODEL_NVIDIA_A100_SXM4_40GB\x10\x32\x12#\n\x1fGPU_MODEL_NVIDIA_A100_SXM4_80GB\x10\x33\x12"\n\x1eGPU_MODEL_NVIDIA_A100_PCI_40GB\x10\x34\x12#\n\x1fGPU_MODEL_NVIDIA_H100_SXM5_80GB\x10<\x12"\n\x1eGPU_MODEL_NVIDIA_H100_PCI_80GB\x10=\x12"\n\x1eGPU_MODEL_NVIDIA_RTX_6000_24GB\x10>*\xca\x03\n\x16\x46unctionExecutorStatus\x12$\n FUNCTION_EXECUTOR_STATUS_UNKNOWN\x10\x00\x12(\n$FUNCTION_EXECUTOR_STATUS_STARTING_UP\x10\x01\x12:\n6FUNCTION_EXECUTOR_STATUS_STARTUP_FAILED_CUSTOMER_ERROR\x10\x02\x12:\n6FUNCTION_EXECUTOR_STATUS_STARTUP_FAILED_PLATFORM_ERROR\x10\x03\x12!\n\x1d\x46UNCTION_EXECUTOR_STATUS_IDLE\x10\x04\x12)\n%FUNCTION_EXECUTOR_STATUS_RUNNING_TASK\x10\x05\x12&\n"FUNCTION_EXECUTOR_STATUS_UNHEALTHY\x10\x06\x12%\n!FUNCTION_EXECUTOR_STATUS_STOPPING\x10\x07\x12$\n FUNCTION_EXECUTOR_STATUS_STOPPED\x10\x08\x12%\n!FUNCTION_EXECUTOR_STATUS_SHUTDOWN\x10\t*\xc3\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\x1c\n\x18\x45XECUTOR_STATUS_STOPPING\x10\x04\x12\x1b\n\x17\x45XECUTOR_STATUS_STOPPED\x10\x05*d\n\x0e\x45xecutorFlavor\x12\x1b\n\x17\x45XECUTOR_FLAVOR_UNKNOWN\x10\x00\x12\x17\n\x13\x45XECUTOR_FLAVOR_OSS\x10\x01\x12\x1c\n\x18\x45XECUTOR_FLAVOR_PLATFORM\x10\x02*[\n\x0bTaskOutcome\x12\x18\n\x14TASK_OUTCOME_UNKNOWN\x10\x00\x12\x18\n\x14TASK_OUTCOME_SUCCESS\x10\x01\x12\x18\n\x14TASK_OUTCOME_FAILURE\x10\x02*\x7f\n\x0eOutputEncoding\x12\x1b\n\x17OUTPUT_ENCODING_UNKNOWN\x10\x00\x12\x18\n\x14OUTPUT_ENCODING_JSON\x10\x01\x12\x1a\n\x16OUTPUT_ENCODING_PICKLE\x10\x02\x12\x1a\n\x16OUTPUT_ENCODING_BINARY\x10\x03\x32\xef\x02\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\x12n\n\x13report_task_outcome\x12).executor_api_pb.ReportTaskOutcomeRequest\x1a*.executor_api_pb.ReportTaskOutcomeResponse"\x00\x62\x06proto3'
|
22
|
+
b'\n!indexify/proto/executor_api.proto\x12\x0f\x65xecutor_api_pb"\x87\x02\n\x0b\x44\x61taPayload\x12\x11\n\x04path\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04size\x18\x02 \x01(\x04H\x01\x88\x01\x01\x12\x18\n\x0bsha256_hash\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x03uri\x18\x04 \x01(\tH\x03\x88\x01\x01\x12;\n\x08\x65ncoding\x18\x05 \x01(\x0e\x32$.executor_api_pb.DataPayloadEncodingH\x04\x88\x01\x01\x12\x1d\n\x10\x65ncoding_version\x18\x06 \x01(\x04H\x05\x88\x01\x01\x42\x07\n\x05_pathB\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"\xbf\x04\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\x0fresource_limits\x18\x08 \x01(\x0b\x32\x1e.executor_api_pb.HostResourcesH\x06\x88\x01\x01\x12%\n\x18\x63ustomer_code_timeout_ms\x18\t \x01(\rH\x07\x88\x01\x01\x12\x30\n\x05graph\x18\n \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\x08\x88\x01\x01\x12\x42\n\tresources\x18\x0b \x01(\x0b\x32*.executor_api_pb.FunctionExecutorResourcesH\t\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\x12\n\x10_resource_limitsB\x1b\n\x19_customer_code_timeout_msB\x08\n\x06_graphB\x0c\n\n_resources"\xe8\x01\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\x12\x1b\n\x0estatus_message\x18\x03 \x01(\tH\x02\x88\x01\x01\x42\x0e\n\x0c_descriptionB\t\n\x07_statusB\x11\n\x0f_status_message"\xcb\x05\n\rExecutorState\x12\x18\n\x0b\x65xecutor_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x10\x64\x65velopment_mode\x18\x02 \x01(\x08H\x01\x88\x01\x01\x12\x15\n\x08hostname\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x34\n\x06\x66lavor\x18\x04 \x01(\x0e\x32\x1f.executor_api_pb.ExecutorFlavorH\x03\x88\x01\x01\x12\x14\n\x07version\x18\x05 \x01(\tH\x04\x88\x01\x01\x12\x34\n\x06status\x18\x06 \x01(\x0e\x32\x1f.executor_api_pb.ExecutorStatusH\x05\x88\x01\x01\x12;\n\x0e\x66ree_resources\x18\x07 \x01(\x0b\x32\x1e.executor_api_pb.HostResourcesH\x06\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\x07\x88\x01\x01\x12\x19\n\x0cserver_clock\x18\x0c \x01(\x04H\x08\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\x13\n\x11_development_modeB\x0b\n\t_hostnameB\t\n\x07_flavorB\n\n\x08_versionB\t\n\x07_statusB\x11\n\x0f_free_resourcesB\r\n\x0b_state_hashB\x0f\n\r_server_clock"l\n\x1aReportExecutorStateRequest\x12;\n\x0e\x65xecutor_state\x18\x01 \x01(\x0b\x32\x1e.executor_api_pb.ExecutorStateH\x00\x88\x01\x01\x42\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"\xa4\x05\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\x16\n\tinput_key\x18\x08 \x01(\tH\x06\x88\x01\x01\x12\x1f\n\x12reducer_output_key\x18\t \x01(\tH\x07\x88\x01\x01\x12\x17\n\ntimeout_ms\x18\n \x01(\rH\x08\x88\x01\x01\x12\x30\n\x05input\x18\x0b \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\t\x88\x01\x01\x12\x38\n\rreducer_input\x18\x0c \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\n\x88\x01\x01\x12&\n\x19output_payload_uri_prefix\x18\r \x01(\tH\x0b\x88\x01\x01\x12;\n\x0cretry_policy\x18\x0e \x01(\x0b\x32 .executor_api_pb.TaskRetryPolicyH\x0c\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\x0c\n\n_input_keyB\x15\n\x13_reducer_output_keyB\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"\x7f\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\x42\x17\n\x15_function_executor_idB\x07\n\x05_task"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"\x87\x06\n\x18ReportTaskOutcomeRequest\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\x06 \x01(\tH\x04\x88\x01\x01\x12\x32\n\x07outcome\x18\x07 \x01(\x0e\x32\x1c.executor_api_pb.TaskOutcomeH\x05\x88\x01\x01\x12\x1a\n\rinvocation_id\x18\x08 \x01(\tH\x06\x88\x01\x01\x12\x18\n\x0b\x65xecutor_id\x18\t \x01(\tH\x07\x88\x01\x01\x12\x14\n\x07reducer\x18\n \x01(\x08H\x08\x88\x01\x01\x12\x16\n\x0enext_functions\x18\x0b \x03(\t\x12\x30\n\nfn_outputs\x18\x0c \x03(\x0b\x32\x1c.executor_api_pb.DataPayload\x12\x31\n\x06stdout\x18\x0e \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\t\x88\x01\x01\x12\x31\n\x06stderr\x18\x0f \x01(\x0b\x32\x1c.executor_api_pb.DataPayloadH\n\x88\x01\x01\x12=\n\x0foutput_encoding\x18\r \x01(\x0e\x32\x1f.executor_api_pb.OutputEncodingH\x0b\x88\x01\x01\x12$\n\x17output_encoding_version\x18\x05 \x01(\x04H\x0c\x88\x01\x01\x42\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_outcomeB\x10\n\x0e_invocation_idB\x0e\n\x0c_executor_idB\n\n\x08_reducerB\t\n\x07_stdoutB\t\n\x07_stderrB\x12\n\x10_output_encodingB\x1a\n\x18_output_encoding_version"\x1b\n\x19ReportTaskOutcomeResponse*\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*\x86\x03\n\x08GPUModel\x12\x15\n\x11GPU_MODEL_UNKNOWN\x10\x00\x12"\n\x1eGPU_MODEL_NVIDIA_TESLA_T4_16GB\x10\n\x12$\n GPU_MODEL_NVIDIA_TESLA_V100_16GB\x10\x14\x12\x1d\n\x19GPU_MODEL_NVIDIA_A10_24GB\x10\x1e\x12\x1f\n\x1bGPU_MODEL_NVIDIA_A6000_48GB\x10(\x12#\n\x1fGPU_MODEL_NVIDIA_A100_SXM4_40GB\x10\x32\x12#\n\x1fGPU_MODEL_NVIDIA_A100_SXM4_80GB\x10\x33\x12"\n\x1eGPU_MODEL_NVIDIA_A100_PCI_40GB\x10\x34\x12#\n\x1fGPU_MODEL_NVIDIA_H100_SXM5_80GB\x10<\x12"\n\x1eGPU_MODEL_NVIDIA_H100_PCI_80GB\x10=\x12"\n\x1eGPU_MODEL_NVIDIA_RTX_6000_24GB\x10>*\xca\x03\n\x16\x46unctionExecutorStatus\x12$\n FUNCTION_EXECUTOR_STATUS_UNKNOWN\x10\x00\x12(\n$FUNCTION_EXECUTOR_STATUS_STARTING_UP\x10\x01\x12:\n6FUNCTION_EXECUTOR_STATUS_STARTUP_FAILED_CUSTOMER_ERROR\x10\x02\x12:\n6FUNCTION_EXECUTOR_STATUS_STARTUP_FAILED_PLATFORM_ERROR\x10\x03\x12!\n\x1d\x46UNCTION_EXECUTOR_STATUS_IDLE\x10\x04\x12)\n%FUNCTION_EXECUTOR_STATUS_RUNNING_TASK\x10\x05\x12&\n"FUNCTION_EXECUTOR_STATUS_UNHEALTHY\x10\x06\x12%\n!FUNCTION_EXECUTOR_STATUS_STOPPING\x10\x07\x12$\n FUNCTION_EXECUTOR_STATUS_STOPPED\x10\x08\x12%\n!FUNCTION_EXECUTOR_STATUS_SHUTDOWN\x10\t*\xc3\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\x1c\n\x18\x45XECUTOR_STATUS_STOPPING\x10\x04\x12\x1b\n\x17\x45XECUTOR_STATUS_STOPPED\x10\x05*d\n\x0e\x45xecutorFlavor\x12\x1b\n\x17\x45XECUTOR_FLAVOR_UNKNOWN\x10\x00\x12\x17\n\x13\x45XECUTOR_FLAVOR_OSS\x10\x01\x12\x1c\n\x18\x45XECUTOR_FLAVOR_PLATFORM\x10\x02*[\n\x0bTaskOutcome\x12\x18\n\x14TASK_OUTCOME_UNKNOWN\x10\x00\x12\x18\n\x14TASK_OUTCOME_SUCCESS\x10\x01\x12\x18\n\x14TASK_OUTCOME_FAILURE\x10\x02*\x7f\n\x0eOutputEncoding\x12\x1b\n\x17OUTPUT_ENCODING_UNKNOWN\x10\x00\x12\x18\n\x14OUTPUT_ENCODING_JSON\x10\x01\x12\x1a\n\x16OUTPUT_ENCODING_PICKLE\x10\x02\x12\x1a\n\x16OUTPUT_ENCODING_BINARY\x10\x03\x32\xef\x02\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\x12n\n\x13report_task_outcome\x12).executor_api_pb.ReportTaskOutcomeRequest\x1a*.executor_api_pb.ReportTaskOutcomeResponse"\x00\x62\x06proto3'
|
23
23
|
)
|
24
24
|
|
25
25
|
_globals = globals()
|
@@ -31,20 +31,20 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
31
31
|
DESCRIPTOR._loaded_options = None
|
32
32
|
_globals["_EXECUTORSTATE_LABELSENTRY"]._loaded_options = None
|
33
33
|
_globals["_EXECUTORSTATE_LABELSENTRY"]._serialized_options = b"8\001"
|
34
|
-
_globals["_DATAPAYLOADENCODING"]._serialized_start =
|
35
|
-
_globals["_DATAPAYLOADENCODING"]._serialized_end =
|
36
|
-
_globals["_GPUMODEL"]._serialized_start =
|
37
|
-
_globals["_GPUMODEL"]._serialized_end =
|
38
|
-
_globals["_FUNCTIONEXECUTORSTATUS"]._serialized_start =
|
39
|
-
_globals["_FUNCTIONEXECUTORSTATUS"]._serialized_end =
|
40
|
-
_globals["_EXECUTORSTATUS"]._serialized_start =
|
41
|
-
_globals["_EXECUTORSTATUS"]._serialized_end =
|
42
|
-
_globals["_EXECUTORFLAVOR"]._serialized_start =
|
43
|
-
_globals["_EXECUTORFLAVOR"]._serialized_end =
|
44
|
-
_globals["_TASKOUTCOME"]._serialized_start =
|
45
|
-
_globals["_TASKOUTCOME"]._serialized_end =
|
46
|
-
_globals["_OUTPUTENCODING"]._serialized_start =
|
47
|
-
_globals["_OUTPUTENCODING"]._serialized_end =
|
34
|
+
_globals["_DATAPAYLOADENCODING"]._serialized_start = 4773
|
35
|
+
_globals["_DATAPAYLOADENCODING"]._serialized_end = 4944
|
36
|
+
_globals["_GPUMODEL"]._serialized_start = 4947
|
37
|
+
_globals["_GPUMODEL"]._serialized_end = 5337
|
38
|
+
_globals["_FUNCTIONEXECUTORSTATUS"]._serialized_start = 5340
|
39
|
+
_globals["_FUNCTIONEXECUTORSTATUS"]._serialized_end = 5798
|
40
|
+
_globals["_EXECUTORSTATUS"]._serialized_start = 5801
|
41
|
+
_globals["_EXECUTORSTATUS"]._serialized_end = 5996
|
42
|
+
_globals["_EXECUTORFLAVOR"]._serialized_start = 5998
|
43
|
+
_globals["_EXECUTORFLAVOR"]._serialized_end = 6098
|
44
|
+
_globals["_TASKOUTCOME"]._serialized_start = 6100
|
45
|
+
_globals["_TASKOUTCOME"]._serialized_end = 6191
|
46
|
+
_globals["_OUTPUTENCODING"]._serialized_start = 6193
|
47
|
+
_globals["_OUTPUTENCODING"]._serialized_end = 6320
|
48
48
|
_globals["_DATAPAYLOAD"]._serialized_start = 55
|
49
49
|
_globals["_DATAPAYLOAD"]._serialized_end = 318
|
50
50
|
_globals["_GPURESOURCES"]._serialized_start = 320
|
@@ -53,30 +53,34 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
53
53
|
_globals["_HOSTRESOURCES"]._serialized_end = 618
|
54
54
|
_globals["_ALLOWEDFUNCTION"]._serialized_start = 621
|
55
55
|
_globals["_ALLOWEDFUNCTION"]._serialized_end = 808
|
56
|
-
_globals["
|
57
|
-
_globals["
|
58
|
-
_globals["
|
59
|
-
_globals["
|
60
|
-
_globals["
|
61
|
-
_globals["
|
62
|
-
_globals["
|
63
|
-
_globals["
|
64
|
-
_globals["
|
65
|
-
_globals["
|
66
|
-
_globals["
|
67
|
-
_globals["
|
68
|
-
_globals["
|
69
|
-
_globals["
|
70
|
-
_globals["
|
71
|
-
_globals["
|
72
|
-
_globals["
|
73
|
-
_globals["
|
74
|
-
_globals["
|
75
|
-
_globals["
|
76
|
-
_globals["
|
77
|
-
_globals["
|
78
|
-
_globals["
|
79
|
-
_globals["
|
80
|
-
_globals["
|
81
|
-
_globals["
|
56
|
+
_globals["_FUNCTIONEXECUTORRESOURCES"]._serialized_start = 811
|
57
|
+
_globals["_FUNCTIONEXECUTORRESOURCES"]._serialized_end = 1008
|
58
|
+
_globals["_FUNCTIONEXECUTORDESCRIPTION"]._serialized_start = 1011
|
59
|
+
_globals["_FUNCTIONEXECUTORDESCRIPTION"]._serialized_end = 1586
|
60
|
+
_globals["_FUNCTIONEXECUTORSTATE"]._serialized_start = 1589
|
61
|
+
_globals["_FUNCTIONEXECUTORSTATE"]._serialized_end = 1821
|
62
|
+
_globals["_EXECUTORSTATE"]._serialized_start = 1824
|
63
|
+
_globals["_EXECUTORSTATE"]._serialized_end = 2539
|
64
|
+
_globals["_EXECUTORSTATE_LABELSENTRY"]._serialized_start = 2359
|
65
|
+
_globals["_EXECUTORSTATE_LABELSENTRY"]._serialized_end = 2404
|
66
|
+
_globals["_REPORTEXECUTORSTATEREQUEST"]._serialized_start = 2541
|
67
|
+
_globals["_REPORTEXECUTORSTATEREQUEST"]._serialized_end = 2649
|
68
|
+
_globals["_REPORTEXECUTORSTATERESPONSE"]._serialized_start = 2651
|
69
|
+
_globals["_REPORTEXECUTORSTATERESPONSE"]._serialized_end = 2680
|
70
|
+
_globals["_TASKRETRYPOLICY"]._serialized_start = 2683
|
71
|
+
_globals["_TASKRETRYPOLICY"]._serialized_end = 2890
|
72
|
+
_globals["_TASK"]._serialized_start = 2893
|
73
|
+
_globals["_TASK"]._serialized_end = 3569
|
74
|
+
_globals["_TASKALLOCATION"]._serialized_start = 3571
|
75
|
+
_globals["_TASKALLOCATION"]._serialized_end = 3698
|
76
|
+
_globals["_GETDESIREDEXECUTORSTATESREQUEST"]._serialized_start = 3700
|
77
|
+
_globals["_GETDESIREDEXECUTORSTATESREQUEST"]._serialized_end = 3775
|
78
|
+
_globals["_DESIREDEXECUTORSTATE"]._serialized_start = 3778
|
79
|
+
_globals["_DESIREDEXECUTORSTATE"]._serialized_end = 3963
|
80
|
+
_globals["_REPORTTASKOUTCOMEREQUEST"]._serialized_start = 3966
|
81
|
+
_globals["_REPORTTASKOUTCOMEREQUEST"]._serialized_end = 4741
|
82
|
+
_globals["_REPORTTASKOUTCOMERESPONSE"]._serialized_start = 4743
|
83
|
+
_globals["_REPORTTASKOUTCOMERESPONSE"]._serialized_end = 4770
|
84
|
+
_globals["_EXECUTORAPI"]._serialized_start = 6323
|
85
|
+
_globals["_EXECUTORAPI"]._serialized_end = 6690
|
82
86
|
# @@protoc_insertion_point(module_scope)
|
@@ -189,6 +189,24 @@ class AllowedFunction(_message.Message):
|
|
189
189
|
graph_version: _Optional[str] = ...,
|
190
190
|
) -> None: ...
|
191
191
|
|
192
|
+
class FunctionExecutorResources(_message.Message):
|
193
|
+
__slots__ = ("cpu_ms_per_sec", "memory_bytes", "disk_bytes", "gpu_count")
|
194
|
+
CPU_MS_PER_SEC_FIELD_NUMBER: _ClassVar[int]
|
195
|
+
MEMORY_BYTES_FIELD_NUMBER: _ClassVar[int]
|
196
|
+
DISK_BYTES_FIELD_NUMBER: _ClassVar[int]
|
197
|
+
GPU_COUNT_FIELD_NUMBER: _ClassVar[int]
|
198
|
+
cpu_ms_per_sec: int
|
199
|
+
memory_bytes: int
|
200
|
+
disk_bytes: int
|
201
|
+
gpu_count: int
|
202
|
+
def __init__(
|
203
|
+
self,
|
204
|
+
cpu_ms_per_sec: _Optional[int] = ...,
|
205
|
+
memory_bytes: _Optional[int] = ...,
|
206
|
+
disk_bytes: _Optional[int] = ...,
|
207
|
+
gpu_count: _Optional[int] = ...,
|
208
|
+
) -> None: ...
|
209
|
+
|
192
210
|
class FunctionExecutorDescription(_message.Message):
|
193
211
|
__slots__ = (
|
194
212
|
"id",
|
@@ -201,6 +219,7 @@ class FunctionExecutorDescription(_message.Message):
|
|
201
219
|
"resource_limits",
|
202
220
|
"customer_code_timeout_ms",
|
203
221
|
"graph",
|
222
|
+
"resources",
|
204
223
|
)
|
205
224
|
ID_FIELD_NUMBER: _ClassVar[int]
|
206
225
|
NAMESPACE_FIELD_NUMBER: _ClassVar[int]
|
@@ -212,6 +231,7 @@ class FunctionExecutorDescription(_message.Message):
|
|
212
231
|
RESOURCE_LIMITS_FIELD_NUMBER: _ClassVar[int]
|
213
232
|
CUSTOMER_CODE_TIMEOUT_MS_FIELD_NUMBER: _ClassVar[int]
|
214
233
|
GRAPH_FIELD_NUMBER: _ClassVar[int]
|
234
|
+
RESOURCES_FIELD_NUMBER: _ClassVar[int]
|
215
235
|
id: str
|
216
236
|
namespace: str
|
217
237
|
graph_name: str
|
@@ -222,6 +242,7 @@ class FunctionExecutorDescription(_message.Message):
|
|
222
242
|
resource_limits: HostResources
|
223
243
|
customer_code_timeout_ms: int
|
224
244
|
graph: DataPayload
|
245
|
+
resources: FunctionExecutorResources
|
225
246
|
def __init__(
|
226
247
|
self,
|
227
248
|
id: _Optional[str] = ...,
|
@@ -234,6 +255,7 @@ class FunctionExecutorDescription(_message.Message):
|
|
234
255
|
resource_limits: _Optional[_Union[HostResources, _Mapping]] = ...,
|
235
256
|
customer_code_timeout_ms: _Optional[int] = ...,
|
236
257
|
graph: _Optional[_Union[DataPayload, _Mapping]] = ...,
|
258
|
+
resources: _Optional[_Union[FunctionExecutorResources, _Mapping]] = ...,
|
237
259
|
) -> None: ...
|
238
260
|
|
239
261
|
class FunctionExecutorState(_message.Message):
|
@@ -335,6 +357,24 @@ class ReportExecutorStateResponse(_message.Message):
|
|
335
357
|
__slots__ = ()
|
336
358
|
def __init__(self) -> None: ...
|
337
359
|
|
360
|
+
class TaskRetryPolicy(_message.Message):
|
361
|
+
__slots__ = ("max_retries", "initial_delay_ms", "max_delay_ms", "delay_multiplier")
|
362
|
+
MAX_RETRIES_FIELD_NUMBER: _ClassVar[int]
|
363
|
+
INITIAL_DELAY_MS_FIELD_NUMBER: _ClassVar[int]
|
364
|
+
MAX_DELAY_MS_FIELD_NUMBER: _ClassVar[int]
|
365
|
+
DELAY_MULTIPLIER_FIELD_NUMBER: _ClassVar[int]
|
366
|
+
max_retries: int
|
367
|
+
initial_delay_ms: int
|
368
|
+
max_delay_ms: int
|
369
|
+
delay_multiplier: int
|
370
|
+
def __init__(
|
371
|
+
self,
|
372
|
+
max_retries: _Optional[int] = ...,
|
373
|
+
initial_delay_ms: _Optional[int] = ...,
|
374
|
+
max_delay_ms: _Optional[int] = ...,
|
375
|
+
delay_multiplier: _Optional[int] = ...,
|
376
|
+
) -> None: ...
|
377
|
+
|
338
378
|
class Task(_message.Message):
|
339
379
|
__slots__ = (
|
340
380
|
"id",
|
@@ -349,6 +389,7 @@ class Task(_message.Message):
|
|
349
389
|
"input",
|
350
390
|
"reducer_input",
|
351
391
|
"output_payload_uri_prefix",
|
392
|
+
"retry_policy",
|
352
393
|
)
|
353
394
|
ID_FIELD_NUMBER: _ClassVar[int]
|
354
395
|
NAMESPACE_FIELD_NUMBER: _ClassVar[int]
|
@@ -362,6 +403,7 @@ class Task(_message.Message):
|
|
362
403
|
INPUT_FIELD_NUMBER: _ClassVar[int]
|
363
404
|
REDUCER_INPUT_FIELD_NUMBER: _ClassVar[int]
|
364
405
|
OUTPUT_PAYLOAD_URI_PREFIX_FIELD_NUMBER: _ClassVar[int]
|
406
|
+
RETRY_POLICY_FIELD_NUMBER: _ClassVar[int]
|
365
407
|
id: str
|
366
408
|
namespace: str
|
367
409
|
graph_name: str
|
@@ -374,6 +416,7 @@ class Task(_message.Message):
|
|
374
416
|
input: DataPayload
|
375
417
|
reducer_input: DataPayload
|
376
418
|
output_payload_uri_prefix: str
|
419
|
+
retry_policy: TaskRetryPolicy
|
377
420
|
def __init__(
|
378
421
|
self,
|
379
422
|
id: _Optional[str] = ...,
|
@@ -388,6 +431,7 @@ class Task(_message.Message):
|
|
388
431
|
input: _Optional[_Union[DataPayload, _Mapping]] = ...,
|
389
432
|
reducer_input: _Optional[_Union[DataPayload, _Mapping]] = ...,
|
390
433
|
output_payload_uri_prefix: _Optional[str] = ...,
|
434
|
+
retry_policy: _Optional[_Union[TaskRetryPolicy, _Mapping]] = ...,
|
391
435
|
) -> None: ...
|
392
436
|
|
393
437
|
class TaskAllocation(_message.Message):
|
@@ -1,6 +1,6 @@
|
|
1
1
|
indexify/cli/cli.py,sha256=k6vhgVKsHZvum2A2w7kbirpKusfqi_PyZGq29Q433_c,8950
|
2
2
|
indexify/executor/README.md,sha256=ozC6_hMkhQQNVCMEpBxwiUALz6lwErPQxNxQfQDqnG4,2029
|
3
|
-
indexify/executor/api_objects.py,sha256=
|
3
|
+
indexify/executor/api_objects.py,sha256=kHx5gKPwM0Rm64Ea__kPFwuarStX0u_9uaE7vV5M5z8,2222
|
4
4
|
indexify/executor/blob_store/blob_store.py,sha256=XViw_KRfFSNqwcFYwMZixZF-EYCjXK2AQHdt0xh4UVo,2368
|
5
5
|
indexify/executor/blob_store/local_fs_blob_store.py,sha256=6LexqMBGXp8f6Ka95R6xMIUyDutrZJABOMNcp-ssa98,1809
|
6
6
|
indexify/executor/blob_store/metrics/blob_store.py,sha256=5_xiPREeHWFtxFh1NupDsF8zP4pmUPgLNNn-UE9Uzvc,1008
|
@@ -22,14 +22,14 @@ indexify/executor/function_executor/metrics/invocation_state_client.py,sha256=6F
|
|
22
22
|
indexify/executor/function_executor/metrics/single_task_runner.py,sha256=7BJlGkdPGKeufMs3zWNO_1GRVzjINRY5rW3Mp4oWWec,805
|
23
23
|
indexify/executor/function_executor/server/client_configuration.py,sha256=gOywMus0cotlX6NKIadEJwvOmBE-LbGE_wvoMi5-HzY,994
|
24
24
|
indexify/executor/function_executor/server/function_executor_server.py,sha256=_DLivLDikupZusRk8gVWDk7fWPT9XjZ4un1yWSlOObs,883
|
25
|
-
indexify/executor/function_executor/server/function_executor_server_factory.py,sha256=
|
25
|
+
indexify/executor/function_executor/server/function_executor_server_factory.py,sha256=xWEuDoxFqF-oC4RoiEer4S0Tk2tNbbJfA2kANZVShpM,1873
|
26
26
|
indexify/executor/function_executor/server/subprocess_function_executor_server.py,sha256=JekDOqF7oFD4J6zcN3xB0Dxd1cgpEXMOsb_rKZOeBlI,668
|
27
27
|
indexify/executor/function_executor/server/subprocess_function_executor_server_factory.py,sha256=g1AUbhOoPsdhp_50Ayahdyv1Ix5-nEBE8orOQfkATpM,4470
|
28
|
-
indexify/executor/function_executor/single_task_runner.py,sha256=
|
28
|
+
indexify/executor/function_executor/single_task_runner.py,sha256=6Fb9icnZ21pJcCq3mddFRoonPdNpUdSjTSQYh9nJXS0,14977
|
29
29
|
indexify/executor/function_executor/task_input.py,sha256=wSrHR4m0juiGClQyeVdhRC37QzDt6Rrjq-ZXJkfBi9k,584
|
30
30
|
indexify/executor/function_executor/task_output.py,sha256=vi0W75T8qbxjtAtI-812HksCv986lH_ijEqc3q0CVww,3424
|
31
31
|
indexify/executor/grpc/channel_manager.py,sha256=ihDkLoiGBLfSmoA2szbntjCfL3E_NDf5LABRXE7YRec,6330
|
32
|
-
indexify/executor/grpc/function_executor_controller.py,sha256=
|
32
|
+
indexify/executor/grpc/function_executor_controller.py,sha256=3esPU9ILzYQ4gjfkRZ3IKHpqXWUQEmNit8XzQYKXoGs,17125
|
33
33
|
indexify/executor/grpc/metrics/channel_manager.py,sha256=k-WArgklmP5WhjcmFmrgRblB7yc3XlaOXO8owRyV-mw,649
|
34
34
|
indexify/executor/grpc/metrics/state_reconciler.py,sha256=0aI2IM4XztKxFa7NCxYSLafw_iiej3p07yEiKyewXIM,585
|
35
35
|
indexify/executor/grpc/metrics/state_reporter.py,sha256=GggBEjMzQUYIG95LtTS4fUg1u9jYowkaXoUXppAXucs,543
|
@@ -55,11 +55,11 @@ indexify/executor/runtime_probes.py,sha256=bo6Dq6AGZpJH099j0DHtVSDEH80tv3j9MXf3V
|
|
55
55
|
indexify/executor/task_fetcher.py,sha256=p3iEsWyGi0ZMPAv0183smzOUD1KycQ_dXsyd9mpB9IU,3529
|
56
56
|
indexify/executor/task_reporter.py,sha256=7X-IdLdwNBIfFbazG_4rtfR1A0ZFt03JGYpVJQUTKpE,16704
|
57
57
|
indexify/executor/task_runner.py,sha256=UupZbGxU9BN4i1t6M8tH-5k3s4eUPEhMhar1YI0Aztk,7219
|
58
|
-
indexify/proto/executor_api.proto,sha256=
|
59
|
-
indexify/proto/executor_api_pb2.py,sha256=
|
60
|
-
indexify/proto/executor_api_pb2.pyi,sha256=
|
58
|
+
indexify/proto/executor_api.proto,sha256=e-RQGStJnr_QsT_0Glx16q33VVQ7jvO7u-v7sfbavgY,10603
|
59
|
+
indexify/proto/executor_api_pb2.py,sha256=jR8kHjztV9TyVNErYHdtmWUzhvEbfLz4LuRMSznwvNI,15291
|
60
|
+
indexify/proto/executor_api_pb2.pyi,sha256=N3cg87otIrr2pxFvf7NKRndDzQL1nmToSjHCfCyZX0I,20246
|
61
61
|
indexify/proto/executor_api_pb2_grpc.py,sha256=GGiDtyQlA2382E_ZyKUBYcWNEJHH_RlulieStKfkJXI,9514
|
62
|
-
indexify-0.3.
|
63
|
-
indexify-0.3.
|
64
|
-
indexify-0.3.
|
65
|
-
indexify-0.3.
|
62
|
+
indexify-0.3.23.dist-info/METADATA,sha256=te3tex-vXTrDiQhM43N7u-cxLBmnJvpr00ftrl9YGt8,1198
|
63
|
+
indexify-0.3.23.dist-info/WHEEL,sha256=RaoafKOydTQ7I_I3JTrPCg6kUmTgtm4BornzOqyEfJ8,88
|
64
|
+
indexify-0.3.23.dist-info/entry_points.txt,sha256=GU9wmsgvN7nQw3N2X0PMYn1RSvF6CrhH9RuC2D8d3Gk,53
|
65
|
+
indexify-0.3.23.dist-info/RECORD,,
|
File without changes
|
File without changes
|