138 const std::string& data_dir,
139 const std::string& tree_heights_json,
140 const std::string& tree_prefill_json,
141 const std::string& map_sizes_json,
143 uint32_t initial_header_generator_point,
144 const std::string& prefilled_public_data_json,
145 uint64_t genesis_timestamp,
146 size_t request_ring_size,
147 size_t response_ring_size)
152 auto tree_height = parse_tree_uint32_map(tree_heights_json);
153 auto tree_prefill = parse_tree_index_map(tree_prefill_json);
162 if (!map_sizes_json.empty()) {
163 auto parsed = parse_tree_uint64_map(map_sizes_json);
164 for (
const auto& [k, v] : parsed) {
171 if (!prefilled_public_data_json.empty()) {
172 prefilled_public_data = parse_prefilled_public_data(prefilled_public_data_json);
173 std::cerr <<
"Parsed " << prefilled_public_data.size() <<
" prefilled public data entries" <<
'\n';
177 std::cerr <<
"Creating WorldState at " << data_dir <<
" with " << threads <<
" threads" <<
'\n';
183 prefilled_public_data,
184 initial_header_generator_point,
192 ipc::ServerOptions opts;
197 opts.max_shm_clients = 8;
198 opts.shm_request_ring_size = request_ring_size;
199 opts.shm_response_ring_size = response_ring_size;
200 auto server = ipc::make_server(input_path, opts);
202 std::cerr <<
"Error: --input path must end with .sock or .shm: " << input_path <<
'\n';
205 std::cerr <<
"aztec-wsdb listening on " << input_path <<
'\n';
206 ipc::install_default_signal_handlers(*server);
208 if (!server->listen()) {
209 std::cerr <<
"Error: Could not start IPC server" <<
'\n';
213 std::cerr <<
"aztec-wsdb IPC server ready" <<
'\n';
235 request.scheduler = scheduler.get();
240 auto handler = make_wsdb_handler(request);
int execute_wsdb_server(const std::string &input_path, const std::string &data_dir, const std::string &tree_heights_json, const std::string &tree_prefill_json, const std::string &map_sizes_json, uint32_t threads, uint32_t initial_header_generator_point, const std::string &prefilled_public_data_json, uint64_t genesis_timestamp, size_t request_ring_size, size_t response_ring_size)
Start the aztec-wsdb IPC server.