indexify 0.3.19__py3-none-any.whl → 0.3.21__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/cli/cli.py +12 -0
- indexify/executor/api_objects.py +11 -6
- indexify/executor/blob_store/blob_store.py +69 -0
- indexify/executor/blob_store/local_fs_blob_store.py +48 -0
- indexify/executor/blob_store/metrics/blob_store.py +33 -0
- indexify/executor/blob_store/s3_blob_store.py +88 -0
- indexify/executor/downloader.py +192 -27
- indexify/executor/executor.py +29 -13
- indexify/executor/function_executor/function_executor.py +1 -1
- indexify/executor/function_executor/function_executor_states_container.py +5 -0
- indexify/executor/function_executor/function_executor_status.py +2 -0
- indexify/executor/function_executor/health_checker.py +7 -2
- indexify/executor/function_executor/invocation_state_client.py +4 -2
- indexify/executor/function_executor/single_task_runner.py +2 -0
- indexify/executor/function_executor/task_output.py +8 -1
- indexify/executor/grpc/channel_manager.py +4 -3
- indexify/executor/grpc/function_executor_controller.py +163 -193
- indexify/executor/grpc/metrics/state_reconciler.py +17 -0
- indexify/executor/grpc/metrics/task_controller.py +8 -0
- indexify/executor/grpc/state_reconciler.py +305 -188
- indexify/executor/grpc/state_reporter.py +18 -10
- indexify/executor/grpc/task_controller.py +247 -189
- indexify/executor/metrics/task_reporter.py +17 -0
- indexify/executor/task_reporter.py +217 -94
- indexify/executor/task_runner.py +1 -0
- indexify/proto/executor_api.proto +37 -11
- indexify/proto/executor_api_pb2.py +49 -47
- indexify/proto/executor_api_pb2.pyi +55 -15
- {indexify-0.3.19.dist-info → indexify-0.3.21.dist-info}/METADATA +2 -1
- {indexify-0.3.19.dist-info → indexify-0.3.21.dist-info}/RECORD +32 -27
- indexify/executor/grpc/completed_tasks_container.py +0 -26
- {indexify-0.3.19.dist-info → indexify-0.3.21.dist-info}/WHEEL +0 -0
- {indexify-0.3.19.dist-info → indexify-0.3.21.dist-info}/entry_points.txt +0 -0
@@ -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"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"\
|
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'
|
23
23
|
)
|
24
24
|
|
25
25
|
_globals = globals()
|
@@ -31,50 +31,52 @@ 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["
|
35
|
-
_globals["
|
36
|
-
_globals["
|
37
|
-
_globals["
|
38
|
-
_globals["
|
39
|
-
_globals["
|
40
|
-
_globals["
|
41
|
-
_globals["
|
42
|
-
_globals["
|
43
|
-
_globals["
|
44
|
-
_globals["
|
45
|
-
_globals["
|
46
|
-
_globals["
|
47
|
-
_globals["
|
48
|
-
_globals["
|
49
|
-
_globals["
|
50
|
-
_globals["
|
51
|
-
_globals["
|
52
|
-
_globals["
|
53
|
-
_globals["
|
54
|
-
_globals["
|
55
|
-
_globals["
|
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["
|
34
|
+
_globals["_DATAPAYLOADENCODING"]._serialized_start = 4203
|
35
|
+
_globals["_DATAPAYLOADENCODING"]._serialized_end = 4374
|
36
|
+
_globals["_GPUMODEL"]._serialized_start = 4377
|
37
|
+
_globals["_GPUMODEL"]._serialized_end = 4767
|
38
|
+
_globals["_FUNCTIONEXECUTORSTATUS"]._serialized_start = 4770
|
39
|
+
_globals["_FUNCTIONEXECUTORSTATUS"]._serialized_end = 5228
|
40
|
+
_globals["_EXECUTORSTATUS"]._serialized_start = 5231
|
41
|
+
_globals["_EXECUTORSTATUS"]._serialized_end = 5426
|
42
|
+
_globals["_EXECUTORFLAVOR"]._serialized_start = 5428
|
43
|
+
_globals["_EXECUTORFLAVOR"]._serialized_end = 5528
|
44
|
+
_globals["_TASKOUTCOME"]._serialized_start = 5530
|
45
|
+
_globals["_TASKOUTCOME"]._serialized_end = 5621
|
46
|
+
_globals["_OUTPUTENCODING"]._serialized_start = 5623
|
47
|
+
_globals["_OUTPUTENCODING"]._serialized_end = 5750
|
48
|
+
_globals["_DATAPAYLOAD"]._serialized_start = 55
|
49
|
+
_globals["_DATAPAYLOAD"]._serialized_end = 318
|
50
|
+
_globals["_GPURESOURCES"]._serialized_start = 320
|
51
|
+
_globals["_GPURESOURCES"]._serialized_end = 421
|
52
|
+
_globals["_HOSTRESOURCES"]._serialized_start = 424
|
53
|
+
_globals["_HOSTRESOURCES"]._serialized_end = 618
|
54
|
+
_globals["_ALLOWEDFUNCTION"]._serialized_start = 621
|
55
|
+
_globals["_ALLOWEDFUNCTION"]._serialized_end = 808
|
56
|
+
_globals["_FUNCTIONEXECUTORDESCRIPTION"]._serialized_start = 811
|
57
|
+
_globals["_FUNCTIONEXECUTORDESCRIPTION"]._serialized_end = 1304
|
58
|
+
_globals["_FUNCTIONEXECUTORSTATE"]._serialized_start = 1307
|
59
|
+
_globals["_FUNCTIONEXECUTORSTATE"]._serialized_end = 1539
|
60
|
+
_globals["_EXECUTORSTATE"]._serialized_start = 1542
|
61
|
+
_globals["_EXECUTORSTATE"]._serialized_end = 2257
|
62
|
+
_globals["_EXECUTORSTATE_LABELSENTRY"]._serialized_start = 2077
|
63
|
+
_globals["_EXECUTORSTATE_LABELSENTRY"]._serialized_end = 2122
|
64
|
+
_globals["_REPORTEXECUTORSTATEREQUEST"]._serialized_start = 2259
|
65
|
+
_globals["_REPORTEXECUTORSTATEREQUEST"]._serialized_end = 2367
|
66
|
+
_globals["_REPORTEXECUTORSTATERESPONSE"]._serialized_start = 2369
|
67
|
+
_globals["_REPORTEXECUTORSTATERESPONSE"]._serialized_end = 2398
|
68
|
+
_globals["_TASK"]._serialized_start = 2401
|
69
|
+
_globals["_TASK"]._serialized_end = 2999
|
70
|
+
_globals["_TASKALLOCATION"]._serialized_start = 3001
|
71
|
+
_globals["_TASKALLOCATION"]._serialized_end = 3128
|
72
|
+
_globals["_GETDESIREDEXECUTORSTATESREQUEST"]._serialized_start = 3130
|
73
|
+
_globals["_GETDESIREDEXECUTORSTATESREQUEST"]._serialized_end = 3205
|
74
|
+
_globals["_DESIREDEXECUTORSTATE"]._serialized_start = 3208
|
75
|
+
_globals["_DESIREDEXECUTORSTATE"]._serialized_end = 3393
|
76
|
+
_globals["_REPORTTASKOUTCOMEREQUEST"]._serialized_start = 3396
|
77
|
+
_globals["_REPORTTASKOUTCOMEREQUEST"]._serialized_end = 4171
|
78
|
+
_globals["_REPORTTASKOUTCOMERESPONSE"]._serialized_start = 4173
|
79
|
+
_globals["_REPORTTASKOUTCOMERESPONSE"]._serialized_end = 4200
|
80
|
+
_globals["_EXECUTORAPI"]._serialized_start = 5753
|
81
|
+
_globals["_EXECUTORAPI"]._serialized_end = 6120
|
80
82
|
# @@protoc_insertion_point(module_scope)
|
@@ -11,6 +11,13 @@ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
|
|
11
11
|
|
12
12
|
DESCRIPTOR: _descriptor.FileDescriptor
|
13
13
|
|
14
|
+
class DataPayloadEncoding(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
15
|
+
__slots__ = ()
|
16
|
+
DATA_PAYLOAD_ENCODING_UNKNOWN: _ClassVar[DataPayloadEncoding]
|
17
|
+
DATA_PAYLOAD_ENCODING_UTF8_JSON: _ClassVar[DataPayloadEncoding]
|
18
|
+
DATA_PAYLOAD_ENCODING_UTF8_TEXT: _ClassVar[DataPayloadEncoding]
|
19
|
+
DATA_PAYLOAD_ENCODING_BINARY_PICKLE: _ClassVar[DataPayloadEncoding]
|
20
|
+
|
14
21
|
class GPUModel(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
15
22
|
__slots__ = ()
|
16
23
|
GPU_MODEL_UNKNOWN: _ClassVar[GPUModel]
|
@@ -70,6 +77,10 @@ class OutputEncoding(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
70
77
|
OUTPUT_ENCODING_PICKLE: _ClassVar[OutputEncoding]
|
71
78
|
OUTPUT_ENCODING_BINARY: _ClassVar[OutputEncoding]
|
72
79
|
|
80
|
+
DATA_PAYLOAD_ENCODING_UNKNOWN: DataPayloadEncoding
|
81
|
+
DATA_PAYLOAD_ENCODING_UTF8_JSON: DataPayloadEncoding
|
82
|
+
DATA_PAYLOAD_ENCODING_UTF8_TEXT: DataPayloadEncoding
|
83
|
+
DATA_PAYLOAD_ENCODING_BINARY_PICKLE: DataPayloadEncoding
|
73
84
|
GPU_MODEL_UNKNOWN: GPUModel
|
74
85
|
GPU_MODEL_NVIDIA_TESLA_T4_16GB: GPUModel
|
75
86
|
GPU_MODEL_NVIDIA_TESLA_V100_16GB: GPUModel
|
@@ -108,6 +119,30 @@ OUTPUT_ENCODING_JSON: OutputEncoding
|
|
108
119
|
OUTPUT_ENCODING_PICKLE: OutputEncoding
|
109
120
|
OUTPUT_ENCODING_BINARY: OutputEncoding
|
110
121
|
|
122
|
+
class DataPayload(_message.Message):
|
123
|
+
__slots__ = ("path", "size", "sha256_hash", "uri", "encoding", "encoding_version")
|
124
|
+
PATH_FIELD_NUMBER: _ClassVar[int]
|
125
|
+
SIZE_FIELD_NUMBER: _ClassVar[int]
|
126
|
+
SHA256_HASH_FIELD_NUMBER: _ClassVar[int]
|
127
|
+
URI_FIELD_NUMBER: _ClassVar[int]
|
128
|
+
ENCODING_FIELD_NUMBER: _ClassVar[int]
|
129
|
+
ENCODING_VERSION_FIELD_NUMBER: _ClassVar[int]
|
130
|
+
path: str
|
131
|
+
size: int
|
132
|
+
sha256_hash: str
|
133
|
+
uri: str
|
134
|
+
encoding: DataPayloadEncoding
|
135
|
+
encoding_version: int
|
136
|
+
def __init__(
|
137
|
+
self,
|
138
|
+
path: _Optional[str] = ...,
|
139
|
+
size: _Optional[int] = ...,
|
140
|
+
sha256_hash: _Optional[str] = ...,
|
141
|
+
uri: _Optional[str] = ...,
|
142
|
+
encoding: _Optional[_Union[DataPayloadEncoding, str]] = ...,
|
143
|
+
encoding_version: _Optional[int] = ...,
|
144
|
+
) -> None: ...
|
145
|
+
|
111
146
|
class GPUResources(_message.Message):
|
112
147
|
__slots__ = ("count", "model")
|
113
148
|
COUNT_FIELD_NUMBER: _ClassVar[int]
|
@@ -165,6 +200,7 @@ class FunctionExecutorDescription(_message.Message):
|
|
165
200
|
"secret_names",
|
166
201
|
"resource_limits",
|
167
202
|
"customer_code_timeout_ms",
|
203
|
+
"graph",
|
168
204
|
)
|
169
205
|
ID_FIELD_NUMBER: _ClassVar[int]
|
170
206
|
NAMESPACE_FIELD_NUMBER: _ClassVar[int]
|
@@ -175,6 +211,7 @@ class FunctionExecutorDescription(_message.Message):
|
|
175
211
|
SECRET_NAMES_FIELD_NUMBER: _ClassVar[int]
|
176
212
|
RESOURCE_LIMITS_FIELD_NUMBER: _ClassVar[int]
|
177
213
|
CUSTOMER_CODE_TIMEOUT_MS_FIELD_NUMBER: _ClassVar[int]
|
214
|
+
GRAPH_FIELD_NUMBER: _ClassVar[int]
|
178
215
|
id: str
|
179
216
|
namespace: str
|
180
217
|
graph_name: str
|
@@ -184,6 +221,7 @@ class FunctionExecutorDescription(_message.Message):
|
|
184
221
|
secret_names: _containers.RepeatedScalarFieldContainer[str]
|
185
222
|
resource_limits: HostResources
|
186
223
|
customer_code_timeout_ms: int
|
224
|
+
graph: DataPayload
|
187
225
|
def __init__(
|
188
226
|
self,
|
189
227
|
id: _Optional[str] = ...,
|
@@ -195,6 +233,7 @@ class FunctionExecutorDescription(_message.Message):
|
|
195
233
|
secret_names: _Optional[_Iterable[str]] = ...,
|
196
234
|
resource_limits: _Optional[_Union[HostResources, _Mapping]] = ...,
|
197
235
|
customer_code_timeout_ms: _Optional[int] = ...,
|
236
|
+
graph: _Optional[_Union[DataPayload, _Mapping]] = ...,
|
198
237
|
) -> None: ...
|
199
238
|
|
200
239
|
class FunctionExecutorState(_message.Message):
|
@@ -225,6 +264,7 @@ class ExecutorState(_message.Message):
|
|
225
264
|
"function_executor_states",
|
226
265
|
"labels",
|
227
266
|
"state_hash",
|
267
|
+
"server_clock",
|
228
268
|
)
|
229
269
|
|
230
270
|
class LabelsEntry(_message.Message):
|
@@ -248,6 +288,7 @@ class ExecutorState(_message.Message):
|
|
248
288
|
FUNCTION_EXECUTOR_STATES_FIELD_NUMBER: _ClassVar[int]
|
249
289
|
LABELS_FIELD_NUMBER: _ClassVar[int]
|
250
290
|
STATE_HASH_FIELD_NUMBER: _ClassVar[int]
|
291
|
+
SERVER_CLOCK_FIELD_NUMBER: _ClassVar[int]
|
251
292
|
executor_id: str
|
252
293
|
development_mode: bool
|
253
294
|
hostname: str
|
@@ -261,6 +302,7 @@ class ExecutorState(_message.Message):
|
|
261
302
|
]
|
262
303
|
labels: _containers.ScalarMap[str, str]
|
263
304
|
state_hash: str
|
305
|
+
server_clock: int
|
264
306
|
def __init__(
|
265
307
|
self,
|
266
308
|
executor_id: _Optional[str] = ...,
|
@@ -278,6 +320,7 @@ class ExecutorState(_message.Message):
|
|
278
320
|
] = ...,
|
279
321
|
labels: _Optional[_Mapping[str, str]] = ...,
|
280
322
|
state_hash: _Optional[str] = ...,
|
323
|
+
server_clock: _Optional[int] = ...,
|
281
324
|
) -> None: ...
|
282
325
|
|
283
326
|
class ReportExecutorStateRequest(_message.Message):
|
@@ -303,6 +346,9 @@ class Task(_message.Message):
|
|
303
346
|
"input_key",
|
304
347
|
"reducer_output_key",
|
305
348
|
"timeout_ms",
|
349
|
+
"input",
|
350
|
+
"reducer_input",
|
351
|
+
"output_payload_uri_prefix",
|
306
352
|
)
|
307
353
|
ID_FIELD_NUMBER: _ClassVar[int]
|
308
354
|
NAMESPACE_FIELD_NUMBER: _ClassVar[int]
|
@@ -313,6 +359,9 @@ class Task(_message.Message):
|
|
313
359
|
INPUT_KEY_FIELD_NUMBER: _ClassVar[int]
|
314
360
|
REDUCER_OUTPUT_KEY_FIELD_NUMBER: _ClassVar[int]
|
315
361
|
TIMEOUT_MS_FIELD_NUMBER: _ClassVar[int]
|
362
|
+
INPUT_FIELD_NUMBER: _ClassVar[int]
|
363
|
+
REDUCER_INPUT_FIELD_NUMBER: _ClassVar[int]
|
364
|
+
OUTPUT_PAYLOAD_URI_PREFIX_FIELD_NUMBER: _ClassVar[int]
|
316
365
|
id: str
|
317
366
|
namespace: str
|
318
367
|
graph_name: str
|
@@ -322,6 +371,9 @@ class Task(_message.Message):
|
|
322
371
|
input_key: str
|
323
372
|
reducer_output_key: str
|
324
373
|
timeout_ms: int
|
374
|
+
input: DataPayload
|
375
|
+
reducer_input: DataPayload
|
376
|
+
output_payload_uri_prefix: str
|
325
377
|
def __init__(
|
326
378
|
self,
|
327
379
|
id: _Optional[str] = ...,
|
@@ -333,6 +385,9 @@ class Task(_message.Message):
|
|
333
385
|
input_key: _Optional[str] = ...,
|
334
386
|
reducer_output_key: _Optional[str] = ...,
|
335
387
|
timeout_ms: _Optional[int] = ...,
|
388
|
+
input: _Optional[_Union[DataPayload, _Mapping]] = ...,
|
389
|
+
reducer_input: _Optional[_Union[DataPayload, _Mapping]] = ...,
|
390
|
+
output_payload_uri_prefix: _Optional[str] = ...,
|
336
391
|
) -> None: ...
|
337
392
|
|
338
393
|
class TaskAllocation(_message.Message):
|
@@ -372,21 +427,6 @@ class DesiredExecutorState(_message.Message):
|
|
372
427
|
clock: _Optional[int] = ...,
|
373
428
|
) -> None: ...
|
374
429
|
|
375
|
-
class DataPayload(_message.Message):
|
376
|
-
__slots__ = ("path", "size", "sha256_hash")
|
377
|
-
PATH_FIELD_NUMBER: _ClassVar[int]
|
378
|
-
SIZE_FIELD_NUMBER: _ClassVar[int]
|
379
|
-
SHA256_HASH_FIELD_NUMBER: _ClassVar[int]
|
380
|
-
path: str
|
381
|
-
size: int
|
382
|
-
sha256_hash: str
|
383
|
-
def __init__(
|
384
|
-
self,
|
385
|
-
path: _Optional[str] = ...,
|
386
|
-
size: _Optional[int] = ...,
|
387
|
-
sha256_hash: _Optional[str] = ...,
|
388
|
-
) -> None: ...
|
389
|
-
|
390
430
|
class ReportTaskOutcomeRequest(_message.Message):
|
391
431
|
__slots__ = (
|
392
432
|
"task_id",
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.3
|
2
2
|
Name: indexify
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.21
|
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
|
@@ -15,6 +15,7 @@ Classifier: Programming Language :: Python :: 3.11
|
|
15
15
|
Classifier: Programming Language :: Python :: 3.12
|
16
16
|
Classifier: Programming Language :: Python :: 3.13
|
17
17
|
Requires-Dist: aiohttp (>=3.11.0,<4.0.0)
|
18
|
+
Requires-Dist: boto3 (>=1.37.30,<2.0.0)
|
18
19
|
Requires-Dist: prometheus-client (>=0.21.1,<0.22.0)
|
19
20
|
Requires-Dist: rich (>=13.9.2,<14.0.0)
|
20
21
|
Requires-Dist: tensorlake (>=0.1)
|
@@ -1,15 +1,19 @@
|
|
1
|
-
indexify/cli/cli.py,sha256=
|
1
|
+
indexify/cli/cli.py,sha256=L-QVyRO-nGazfrdIbhxYvxMwhEnNjJ4H32Lw9pz464I,9345
|
2
2
|
indexify/executor/README.md,sha256=ozC6_hMkhQQNVCMEpBxwiUALz6lwErPQxNxQfQDqnG4,2029
|
3
|
-
indexify/executor/api_objects.py,sha256=
|
4
|
-
indexify/executor/
|
5
|
-
indexify/executor/
|
3
|
+
indexify/executor/api_objects.py,sha256=UEMpD_kKr6BNfu2JdYzq1CPNrEmVZYhwlZRKf3hB7KI,1750
|
4
|
+
indexify/executor/blob_store/blob_store.py,sha256=XViw_KRfFSNqwcFYwMZixZF-EYCjXK2AQHdt0xh4UVo,2368
|
5
|
+
indexify/executor/blob_store/local_fs_blob_store.py,sha256=6LexqMBGXp8f6Ka95R6xMIUyDutrZJABOMNcp-ssa98,1809
|
6
|
+
indexify/executor/blob_store/metrics/blob_store.py,sha256=5_xiPREeHWFtxFh1NupDsF8zP4pmUPgLNNn-UE9Uzvc,1008
|
7
|
+
indexify/executor/blob_store/s3_blob_store.py,sha256=G3B_V3gUE7XbUY42lDtBczUKuA7q8S7MD43tx1aHrJo,3445
|
8
|
+
indexify/executor/downloader.py,sha256=7wMuOHNX0w3HM89RZaYFix_VpNfSmZl_O52Y7QB-ivU,15483
|
9
|
+
indexify/executor/executor.py,sha256=K_xNJDImvIxgpE_ypw1ERyrijqOSe0EZIyVRVCqztVw,16697
|
6
10
|
indexify/executor/executor_flavor.py,sha256=uilzDQVVYlQGR1MVnrUC4NevUActDWHdnJkr38M6kTk,118
|
7
|
-
indexify/executor/function_executor/function_executor.py,sha256=
|
11
|
+
indexify/executor/function_executor/function_executor.py,sha256=agfUxzSQ-2TqkpMhW3OvOSMF_EhpemetaL3_dYp29Ro,11888
|
8
12
|
indexify/executor/function_executor/function_executor_state.py,sha256=ljPm1IrRMJ8hFklwvFp7Xax2HMpUIOHm0DwOxxMcy7U,4336
|
9
|
-
indexify/executor/function_executor/function_executor_states_container.py,sha256=
|
10
|
-
indexify/executor/function_executor/function_executor_status.py,sha256=
|
11
|
-
indexify/executor/function_executor/health_checker.py,sha256=
|
12
|
-
indexify/executor/function_executor/invocation_state_client.py,sha256=
|
13
|
+
indexify/executor/function_executor/function_executor_states_container.py,sha256=MFtHNMkzL3zzoa4YdWaw6X21dzo3P4vdEyJ_OKAuTlw,3766
|
14
|
+
indexify/executor/function_executor/function_executor_status.py,sha256=Ms8tHG0wlw__pToeQIfBV6SO9c4tPu3UQgJAwXUkg2M,3597
|
15
|
+
indexify/executor/function_executor/health_checker.py,sha256=EVA65Rn7eAC7HXzhZgScMDc57ODnvFopopdye7j1hfU,6254
|
16
|
+
indexify/executor/function_executor/invocation_state_client.py,sha256=VTpeNxxfsa0ej20Q_ker5RZVdHiu59HWd5qNOjo6DBQ,9800
|
13
17
|
indexify/executor/function_executor/metrics/function_executor.py,sha256=TDksxLRJr-P9ZKhF2Orsaxzzb4lVIBxFEjd_9Zv53Ng,6313
|
14
18
|
indexify/executor/function_executor/metrics/function_executor_state.py,sha256=qheMhnoiYLiZB7ky5EyegfDy4Mr0Zh83bOE0gJ38YmU,1607
|
15
19
|
indexify/executor/function_executor/metrics/function_executor_state_container.py,sha256=6rrAfml-TivjkHatCM4BLY7jmVs523Wzb6QIysncc-0,302
|
@@ -21,21 +25,22 @@ indexify/executor/function_executor/server/function_executor_server.py,sha256=_D
|
|
21
25
|
indexify/executor/function_executor/server/function_executor_server_factory.py,sha256=cP93a3t1AfGx8qwageNLVdTwG52UOwzYNbbyrPq2TUQ,1692
|
22
26
|
indexify/executor/function_executor/server/subprocess_function_executor_server.py,sha256=JekDOqF7oFD4J6zcN3xB0Dxd1cgpEXMOsb_rKZOeBlI,668
|
23
27
|
indexify/executor/function_executor/server/subprocess_function_executor_server_factory.py,sha256=g1AUbhOoPsdhp_50Ayahdyv1Ix5-nEBE8orOQfkATpM,4470
|
24
|
-
indexify/executor/function_executor/single_task_runner.py,sha256=
|
28
|
+
indexify/executor/function_executor/single_task_runner.py,sha256=wHllYigXy5R9ZiJREDf1EazqxUrhgxEJaSYGQwPUnZU,14140
|
25
29
|
indexify/executor/function_executor/task_input.py,sha256=wSrHR4m0juiGClQyeVdhRC37QzDt6Rrjq-ZXJkfBi9k,584
|
26
|
-
indexify/executor/function_executor/task_output.py,sha256=
|
27
|
-
indexify/executor/grpc/channel_manager.py,sha256=
|
28
|
-
indexify/executor/grpc/
|
29
|
-
indexify/executor/grpc/function_executor_controller.py,sha256=pfxMgyxLR2FFbLjyY5Yib8RSaI_6YeQOdf_VscXLqN0,18645
|
30
|
+
indexify/executor/function_executor/task_output.py,sha256=vi0W75T8qbxjtAtI-812HksCv986lH_ijEqc3q0CVww,3424
|
31
|
+
indexify/executor/grpc/channel_manager.py,sha256=ihDkLoiGBLfSmoA2szbntjCfL3E_NDf5LABRXE7YRec,6330
|
32
|
+
indexify/executor/grpc/function_executor_controller.py,sha256=b_xqiXsA79yIMCHtRJv0i0px6QMToIj9nCTc_km9fHk,16070
|
30
33
|
indexify/executor/grpc/metrics/channel_manager.py,sha256=k-WArgklmP5WhjcmFmrgRblB7yc3XlaOXO8owRyV-mw,649
|
34
|
+
indexify/executor/grpc/metrics/state_reconciler.py,sha256=0aI2IM4XztKxFa7NCxYSLafw_iiej3p07yEiKyewXIM,585
|
31
35
|
indexify/executor/grpc/metrics/state_reporter.py,sha256=GggBEjMzQUYIG95LtTS4fUg1u9jYowkaXoUXppAXucs,543
|
32
|
-
indexify/executor/grpc/
|
33
|
-
indexify/executor/grpc/
|
34
|
-
indexify/executor/grpc/
|
36
|
+
indexify/executor/grpc/metrics/task_controller.py,sha256=9Nm86nGxL2rZ3rAORB0_CBdO--Fe4MBrewVW4CqGyOU,222
|
37
|
+
indexify/executor/grpc/state_reconciler.py,sha256=Yx_r1oUBGWjHWqUSUhap2ALZpz_o1Ue-SdL7BOgWQQU,19273
|
38
|
+
indexify/executor/grpc/state_reporter.py,sha256=iixvl1nzJ_SfQhTUJpBEfiVlFPvOxQxvZyqT5Szk43Q,10503
|
39
|
+
indexify/executor/grpc/task_controller.py,sha256=JrRUkVa8pGoYWBg_RVfn1ThvDhYCgJSMACFPUww7Lys,20851
|
35
40
|
indexify/executor/metrics/downloader.py,sha256=lctPh8xjkXeLEFJnl1hNrD1yEhLhIl5sggsR4Yoe_Zc,2746
|
36
41
|
indexify/executor/metrics/executor.py,sha256=ua-Vv_k1CB4juJdF7tEBQbBMksqWAA3iXKKMKXZUCLk,2369
|
37
42
|
indexify/executor/metrics/task_fetcher.py,sha256=iJEwCLzYr2cuz7hRvNiqaa2nvQP4OrA0hm0iJY0YKG0,736
|
38
|
-
indexify/executor/metrics/task_reporter.py,sha256=
|
43
|
+
indexify/executor/metrics/task_reporter.py,sha256=DKieoeNvyyP5R0V62OZns_dDjr_UkFcJ4eeuiy4kvkM,1837
|
39
44
|
indexify/executor/metrics/task_runner.py,sha256=ZGFrl7zzfUdgPZnklxRIbnv9wVcHIQRhOGNqn9V2hSk,2047
|
40
45
|
indexify/executor/monitoring/function_allowlist.py,sha256=wUGeiv3aAGWMlQXzHXq9O6MVHby6Tu-zY4U0MyWiQu0,683
|
41
46
|
indexify/executor/monitoring/handler.py,sha256=Cj1cu_LcsAP0tdviqNhoEtGm4h0OJAxxzW9C2YdNXYU,240
|
@@ -48,13 +53,13 @@ indexify/executor/monitoring/server.py,sha256=yzdYhcxnmY6uTQUMt3vatF5jilN52ZtfFs
|
|
48
53
|
indexify/executor/monitoring/startup_probe_handler.py,sha256=zXXsBU15SMlBx1bSFpxWDfed1VHtKKnwvLQ8-frpG98,425
|
49
54
|
indexify/executor/runtime_probes.py,sha256=bo6Dq6AGZpJH099j0DHtVSDEH80tv3j9MXf3VXSx_p8,2182
|
50
55
|
indexify/executor/task_fetcher.py,sha256=p3iEsWyGi0ZMPAv0183smzOUD1KycQ_dXsyd9mpB9IU,3529
|
51
|
-
indexify/executor/task_reporter.py,sha256=
|
52
|
-
indexify/executor/task_runner.py,sha256=
|
53
|
-
indexify/proto/executor_api.proto,sha256=
|
54
|
-
indexify/proto/executor_api_pb2.py,sha256=
|
55
|
-
indexify/proto/executor_api_pb2.pyi,sha256=
|
56
|
+
indexify/executor/task_reporter.py,sha256=7X-IdLdwNBIfFbazG_4rtfR1A0ZFt03JGYpVJQUTKpE,16704
|
57
|
+
indexify/executor/task_runner.py,sha256=UupZbGxU9BN4i1t6M8tH-5k3s4eUPEhMhar1YI0Aztk,7219
|
58
|
+
indexify/proto/executor_api.proto,sha256=K1lwFmk042GA1tp8s633FZJVg6Fi8f8LtAuFj8Gz7XU,9930
|
59
|
+
indexify/proto/executor_api_pb2.py,sha256=5y570_FIgc6WFhHVAKWFieMuUhyKBA7rPJJ4DJ5hcCM,14054
|
60
|
+
indexify/proto/executor_api_pb2.pyi,sha256=5eJJJjPNdTMSttNUOtzGwADbASsCh7138de_Y3l8uq4,18612
|
56
61
|
indexify/proto/executor_api_pb2_grpc.py,sha256=GGiDtyQlA2382E_ZyKUBYcWNEJHH_RlulieStKfkJXI,9514
|
57
|
-
indexify-0.3.
|
58
|
-
indexify-0.3.
|
59
|
-
indexify-0.3.
|
60
|
-
indexify-0.3.
|
62
|
+
indexify-0.3.21.dist-info/METADATA,sha256=FnyHAJo968nOsbZyCvFSL0rW-6bsaCAilmCZVOTL9lg,1198
|
63
|
+
indexify-0.3.21.dist-info/WHEEL,sha256=RaoafKOydTQ7I_I3JTrPCg6kUmTgtm4BornzOqyEfJ8,88
|
64
|
+
indexify-0.3.21.dist-info/entry_points.txt,sha256=GU9wmsgvN7nQw3N2X0PMYn1RSvF6CrhH9RuC2D8d3Gk,53
|
65
|
+
indexify-0.3.21.dist-info/RECORD,,
|
@@ -1,26 +0,0 @@
|
|
1
|
-
import asyncio
|
2
|
-
from typing import List, Set
|
3
|
-
|
4
|
-
|
5
|
-
class CompletedTasksContainer:
|
6
|
-
"""An asyncio concurrent container for the completed task IDs."""
|
7
|
-
|
8
|
-
def __init__(self):
|
9
|
-
# The fields below are protected by the lock.
|
10
|
-
self._lock: asyncio.Lock = asyncio.Lock()
|
11
|
-
self._completed_task_ids: Set[str] = set()
|
12
|
-
|
13
|
-
async def add(self, task_id: str) -> None:
|
14
|
-
"""Add a task to the container."""
|
15
|
-
async with self._lock:
|
16
|
-
self._completed_task_ids.add(task_id)
|
17
|
-
|
18
|
-
async def contains(self, task_id: str) -> bool:
|
19
|
-
"""Check if the task is in the container."""
|
20
|
-
async with self._lock:
|
21
|
-
return task_id in self._completed_task_ids
|
22
|
-
|
23
|
-
async def replace(self, task_ids: List[str]) -> None:
|
24
|
-
"""Replaces the task IDs with the supplied task IDs."""
|
25
|
-
async with self._lock:
|
26
|
-
self._completed_task_ids = set(task_ids)
|
File without changes
|
File without changes
|