|
9 | 9 | from envyaml import EnvYAML |
10 | 10 |
|
11 | 11 | from connectors.logger import logger |
12 | | - |
13 | | -DEFAULT_ELASTICSEARCH_MAX_RETRIES = 5 |
14 | | -DEFAULT_ELASTICSEARCH_RETRY_INTERVAL = 10 |
15 | | - |
16 | | -DEFAULT_MAX_FILE_SIZE = 10485760 # 10MB |
17 | | - |
| 12 | +from connectors.utils import ( |
| 13 | + DEFAULT_MAX_FILE_SIZE, |
| 14 | + DEFAULT_QUEUE_MEM_SIZE, |
| 15 | + DEFAULT_ELASTICSEARCH_MAX_RETRIES, |
| 16 | + DEFAULT_ELASTICSEARCH_RETRY_INTERVAL |
| 17 | +) |
18 | 18 |
|
19 | 19 | def load_config(config_file): |
20 | 20 | logger.info(f"Loading config from {config_file}") |
@@ -67,7 +67,7 @@ def _default_config(): |
67 | 67 | "verify_certs": True, |
68 | 68 | "bulk": { |
69 | 69 | "queue_max_size": 1024, |
70 | | - "queue_max_mem_size": 25, |
| 70 | + "queue_max_mem_size": 25 * 1024 * 1024, # 25 MB |
71 | 71 | "queue_refresh_interval": 1, |
72 | 72 | "queue_refresh_timeout": 600, |
73 | 73 | "display_every": 100, |
@@ -108,6 +108,7 @@ def _default_config(): |
108 | 108 | "max_concurrent_access_control_syncs": 1, |
109 | 109 | "max_concurrent_scheduling_tasks": 4, |
110 | 110 | "max_file_download_size": DEFAULT_MAX_FILE_SIZE, |
| 111 | + "queue_max_mem_size": DEFAULT_QUEUE_MEM_SIZE, |
111 | 112 | "job_cleanup_interval": 300, |
112 | 113 | "log_level": "INFO", |
113 | 114 | }, |
@@ -220,19 +221,28 @@ class DataSourceFrameworkConfig: |
220 | 221 | preventing them from requiring substantial changes to access new configs that may be added. |
221 | 222 | """ |
222 | 223 |
|
223 | | - def __init__(self, max_file_size): |
| 224 | + def __init__(self, max_file_size, queue_max_mem_size): |
224 | 225 | """ |
225 | 226 | Should not be called directly. Use the Builder. |
226 | 227 | """ |
227 | 228 | self.max_file_size = max_file_size |
| 229 | + self.max_queue_mem_size = queue_max_mem_size |
228 | 230 |
|
229 | 231 | class Builder: |
230 | 232 | def __init__(self): |
231 | 233 | self.max_file_size = DEFAULT_MAX_FILE_SIZE |
| 234 | + self.max_queue_mem_size = DEFAULT_QUEUE_MEM_SIZE |
232 | 235 |
|
233 | 236 | def with_max_file_size(self, max_file_size): |
234 | 237 | self.max_file_size = max_file_size |
235 | 238 | return self |
236 | 239 |
|
| 240 | + def with_max_queue_memory_size(self, queue_max_mem_size): |
| 241 | + self.max_queue_mem_size = queue_max_mem_size |
| 242 | + return self |
| 243 | + |
237 | 244 | def build(self): |
238 | | - return DataSourceFrameworkConfig(self.max_file_size) |
| 245 | + return DataSourceFrameworkConfig( |
| 246 | + self.max_file_size, |
| 247 | + self.max_queue_mem_size |
| 248 | + ) |
0 commit comments