diff --git a/indexer/services/ender/src/helpers/postgres/postgres-functions.ts b/indexer/services/ender/src/helpers/postgres/postgres-functions.ts index 94024ee20f..760351aff0 100644 --- a/indexer/services/ender/src/helpers/postgres/postgres-functions.ts +++ b/indexer/services/ender/src/helpers/postgres/postgres-functions.ts @@ -26,41 +26,50 @@ function newScript(name: string, scriptPath: string): PostgresFunction { }; } -const scripts: string[] = [ - 'create_extension_pg_stat_statements.sql', - 'create_extension_uuid_ossp.sql', +const HANDLER_SCRIPTS: string[] = [ 'dydx_asset_create_handler.sql', - 'dydx_block_processor.sql', 'dydx_block_processor_ordered_handlers.sql', 'dydx_block_processor_unordered_handlers.sql', - 'dydx_clob_pair_status_to_market_status.sql', 'dydx_deleveraging_handler.sql', + 'dydx_funding_handler.sql', + 'dydx_liquidity_tier_handler.sql', 'dydx_market_create_handler.sql', 'dydx_market_modify_handler.sql', 'dydx_market_price_update_handler.sql', + 'dydx_perpetual_market_handler.sql', + 'dydx_stateful_order_handler.sql', + 'dydx_subaccount_update_handler.sql', + 'dydx_transfer_handler.sql', + 'dydx_update_clob_pair_handler.sql', + 'dydx_update_perpetual_handler.sql', +]; + +const DB_SETUP_SCRIPTS: string[] = [ + 'create_extension_pg_stat_statements.sql', + 'create_extension_uuid_ossp.sql', +]; + +const HELPER_SCRIPTS: string[] = [ + 'dydx_clob_pair_status_to_market_status.sql', + 'dydx_create_initial_rows_for_tendermint_block.sql', + 'dydx_create_tendermint_event.sql', + 'dydx_create_transaction.sql', 'dydx_event_id_from_parts.sql', 'dydx_from_jsonlib_long.sql', 'dydx_from_protocol_order_side.sql', 'dydx_from_protocol_time_in_force.sql', 'dydx_from_serializable_int.sql', - 'dydx_funding_handler.sql', 'dydx_get_fee_from_liquidity.sql', - 'dydx_get_perpetual_market_for_clob_pair.sql', 'dydx_get_order_status.sql', + 'dydx_get_perpetual_market_for_clob_pair.sql', 'dydx_get_total_filled_from_liquidity.sql', 'dydx_get_weighted_average.sql', 'dydx_liquidation_fill_handler_per_order.sql', - 'dydx_liquidity_tier_handler.sql', 'dydx_order_fill_handler_per_order.sql', - 'dydx_perpetual_market_handler.sql', 'dydx_perpetual_position_and_order_side_matching.sql', 'dydx_protocol_condition_type_to_order_type.sql', - 'dydx_stateful_order_handler.sql', - 'dydx_subaccount_update_handler.sql', - 'dydx_transfer_handler.sql', + 'dydx_tendermint_event_to_transaction_index.sql', 'dydx_trim_scale.sql', - 'dydx_update_clob_pair_handler.sql', - 'dydx_update_perpetual_handler.sql', 'dydx_update_perpetual_position_aggregate_fields.sql', 'dydx_uuid.sql', 'dydx_uuid_from_asset_position_parts.sql', @@ -74,19 +83,26 @@ const scripts: string[] = [ 'dydx_uuid_from_subaccount_id_parts.sql', 'dydx_uuid_from_transaction_parts.sql', 'dydx_uuid_from_transfer_parts.sql', - 'dydx_create_transaction.sql', - 'dydx_create_initial_rows_for_tendermint_block.sql', - 'dydx_create_tendermint_event.sql', - 'dydx_tendermint_event_to_transaction_index.sql', +]; + +const MAIN_SCRIPTS: string[] = [ + 'dydx_block_processor.sql', +]; + +const SCRIPTS: string[] = [ + ...HANDLER_SCRIPTS.map((script: string) => `handlers/${script}`), + ...HELPER_SCRIPTS.map((script: string) => `helpers/${script}`), + ...DB_SETUP_SCRIPTS.map((script: string) => `setup/${script}`), + ...MAIN_SCRIPTS, ]; export async function createPostgresFunctions(): Promise { await Promise.all([ dbHelpers.createModelToJsonFunctions(), - ...scripts.map((script: string) => storeHelpers.rawQuery(newScript(script, `../../scripts/${script}`).script, {}) + ...SCRIPTS.map((script: string) => storeHelpers.rawQuery(newScript(script, `../../scripts/${script}`).script, {}) .catch((error: Error) => { logger.error({ - at: 'dbHelpers#createModelToJsonFunctions', + at: 'postgres-functions#createPostgresFunctions', message: `Failed to create or replace function contained in ${script}`, error, }); diff --git a/indexer/services/ender/src/lib/batched-handlers.ts b/indexer/services/ender/src/lib/batched-handlers.ts index 88e174e64c..a99637f7a8 100644 --- a/indexer/services/ender/src/lib/batched-handlers.ts +++ b/indexer/services/ender/src/lib/batched-handlers.ts @@ -76,7 +76,8 @@ export class BatchedHandlers { */ public async process( kafkaPublisher: KafkaPublisher, - resultRow: pg.QueryResultRow): Promise { + resultRow: pg.QueryResultRow, + ): Promise { for (let batchIndex = 0; batchIndex < this.batchedHandlers.length; batchIndex++) { const start: number = Date.now(); const handlerCountMapping: { [key: string]: number } = {}; diff --git a/indexer/services/ender/src/scripts/dydx_asset_create_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_asset_create_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_asset_create_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_asset_create_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_block_processor_ordered_handlers.sql b/indexer/services/ender/src/scripts/handlers/dydx_block_processor_ordered_handlers.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_block_processor_ordered_handlers.sql rename to indexer/services/ender/src/scripts/handlers/dydx_block_processor_ordered_handlers.sql diff --git a/indexer/services/ender/src/scripts/dydx_block_processor_unordered_handlers.sql b/indexer/services/ender/src/scripts/handlers/dydx_block_processor_unordered_handlers.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_block_processor_unordered_handlers.sql rename to indexer/services/ender/src/scripts/handlers/dydx_block_processor_unordered_handlers.sql diff --git a/indexer/services/ender/src/scripts/dydx_deleveraging_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_deleveraging_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_deleveraging_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_deleveraging_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_funding_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_funding_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_funding_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_funding_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_liquidity_tier_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_liquidity_tier_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_liquidity_tier_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_liquidity_tier_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_market_create_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_market_create_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_market_create_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_market_create_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_market_modify_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_market_modify_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_market_modify_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_market_modify_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_market_price_update_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_market_price_update_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_market_price_update_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_market_price_update_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_perpetual_market_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_perpetual_market_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_perpetual_market_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_perpetual_market_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_stateful_order_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_stateful_order_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_stateful_order_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_stateful_order_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_subaccount_update_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_subaccount_update_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_subaccount_update_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_subaccount_update_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_transfer_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_transfer_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_transfer_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_transfer_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_update_clob_pair_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_update_clob_pair_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_update_clob_pair_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_update_clob_pair_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_update_perpetual_handler.sql b/indexer/services/ender/src/scripts/handlers/dydx_update_perpetual_handler.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_update_perpetual_handler.sql rename to indexer/services/ender/src/scripts/handlers/dydx_update_perpetual_handler.sql diff --git a/indexer/services/ender/src/scripts/dydx_clob_pair_status_to_market_status.sql b/indexer/services/ender/src/scripts/helpers/dydx_clob_pair_status_to_market_status.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_clob_pair_status_to_market_status.sql rename to indexer/services/ender/src/scripts/helpers/dydx_clob_pair_status_to_market_status.sql diff --git a/indexer/services/ender/src/scripts/dydx_create_initial_rows_for_tendermint_block.sql b/indexer/services/ender/src/scripts/helpers/dydx_create_initial_rows_for_tendermint_block.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_create_initial_rows_for_tendermint_block.sql rename to indexer/services/ender/src/scripts/helpers/dydx_create_initial_rows_for_tendermint_block.sql diff --git a/indexer/services/ender/src/scripts/dydx_create_tendermint_event.sql b/indexer/services/ender/src/scripts/helpers/dydx_create_tendermint_event.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_create_tendermint_event.sql rename to indexer/services/ender/src/scripts/helpers/dydx_create_tendermint_event.sql diff --git a/indexer/services/ender/src/scripts/dydx_create_transaction.sql b/indexer/services/ender/src/scripts/helpers/dydx_create_transaction.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_create_transaction.sql rename to indexer/services/ender/src/scripts/helpers/dydx_create_transaction.sql diff --git a/indexer/services/ender/src/scripts/dydx_event_id_from_parts.sql b/indexer/services/ender/src/scripts/helpers/dydx_event_id_from_parts.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_event_id_from_parts.sql rename to indexer/services/ender/src/scripts/helpers/dydx_event_id_from_parts.sql diff --git a/indexer/services/ender/src/scripts/dydx_from_jsonlib_long.sql b/indexer/services/ender/src/scripts/helpers/dydx_from_jsonlib_long.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_from_jsonlib_long.sql rename to indexer/services/ender/src/scripts/helpers/dydx_from_jsonlib_long.sql diff --git a/indexer/services/ender/src/scripts/dydx_from_protocol_order_side.sql b/indexer/services/ender/src/scripts/helpers/dydx_from_protocol_order_side.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_from_protocol_order_side.sql rename to indexer/services/ender/src/scripts/helpers/dydx_from_protocol_order_side.sql diff --git a/indexer/services/ender/src/scripts/dydx_from_protocol_time_in_force.sql b/indexer/services/ender/src/scripts/helpers/dydx_from_protocol_time_in_force.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_from_protocol_time_in_force.sql rename to indexer/services/ender/src/scripts/helpers/dydx_from_protocol_time_in_force.sql diff --git a/indexer/services/ender/src/scripts/dydx_from_serializable_int.sql b/indexer/services/ender/src/scripts/helpers/dydx_from_serializable_int.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_from_serializable_int.sql rename to indexer/services/ender/src/scripts/helpers/dydx_from_serializable_int.sql diff --git a/indexer/services/ender/src/scripts/dydx_get_fee_from_liquidity.sql b/indexer/services/ender/src/scripts/helpers/dydx_get_fee_from_liquidity.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_get_fee_from_liquidity.sql rename to indexer/services/ender/src/scripts/helpers/dydx_get_fee_from_liquidity.sql diff --git a/indexer/services/ender/src/scripts/dydx_get_order_status.sql b/indexer/services/ender/src/scripts/helpers/dydx_get_order_status.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_get_order_status.sql rename to indexer/services/ender/src/scripts/helpers/dydx_get_order_status.sql diff --git a/indexer/services/ender/src/scripts/dydx_get_perpetual_market_for_clob_pair.sql b/indexer/services/ender/src/scripts/helpers/dydx_get_perpetual_market_for_clob_pair.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_get_perpetual_market_for_clob_pair.sql rename to indexer/services/ender/src/scripts/helpers/dydx_get_perpetual_market_for_clob_pair.sql diff --git a/indexer/services/ender/src/scripts/dydx_get_total_filled_from_liquidity.sql b/indexer/services/ender/src/scripts/helpers/dydx_get_total_filled_from_liquidity.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_get_total_filled_from_liquidity.sql rename to indexer/services/ender/src/scripts/helpers/dydx_get_total_filled_from_liquidity.sql diff --git a/indexer/services/ender/src/scripts/dydx_get_weighted_average.sql b/indexer/services/ender/src/scripts/helpers/dydx_get_weighted_average.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_get_weighted_average.sql rename to indexer/services/ender/src/scripts/helpers/dydx_get_weighted_average.sql diff --git a/indexer/services/ender/src/scripts/dydx_liquidation_fill_handler_per_order.sql b/indexer/services/ender/src/scripts/helpers/dydx_liquidation_fill_handler_per_order.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_liquidation_fill_handler_per_order.sql rename to indexer/services/ender/src/scripts/helpers/dydx_liquidation_fill_handler_per_order.sql diff --git a/indexer/services/ender/src/scripts/dydx_order_fill_handler_per_order.sql b/indexer/services/ender/src/scripts/helpers/dydx_order_fill_handler_per_order.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_order_fill_handler_per_order.sql rename to indexer/services/ender/src/scripts/helpers/dydx_order_fill_handler_per_order.sql diff --git a/indexer/services/ender/src/scripts/dydx_perpetual_position_and_order_side_matching.sql b/indexer/services/ender/src/scripts/helpers/dydx_perpetual_position_and_order_side_matching.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_perpetual_position_and_order_side_matching.sql rename to indexer/services/ender/src/scripts/helpers/dydx_perpetual_position_and_order_side_matching.sql diff --git a/indexer/services/ender/src/scripts/dydx_protocol_condition_type_to_order_type.sql b/indexer/services/ender/src/scripts/helpers/dydx_protocol_condition_type_to_order_type.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_protocol_condition_type_to_order_type.sql rename to indexer/services/ender/src/scripts/helpers/dydx_protocol_condition_type_to_order_type.sql diff --git a/indexer/services/ender/src/scripts/dydx_tendermint_event_to_transaction_index.sql b/indexer/services/ender/src/scripts/helpers/dydx_tendermint_event_to_transaction_index.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_tendermint_event_to_transaction_index.sql rename to indexer/services/ender/src/scripts/helpers/dydx_tendermint_event_to_transaction_index.sql diff --git a/indexer/services/ender/src/scripts/dydx_trim_scale.sql b/indexer/services/ender/src/scripts/helpers/dydx_trim_scale.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_trim_scale.sql rename to indexer/services/ender/src/scripts/helpers/dydx_trim_scale.sql diff --git a/indexer/services/ender/src/scripts/dydx_update_perpetual_position_aggregate_fields.sql b/indexer/services/ender/src/scripts/helpers/dydx_update_perpetual_position_aggregate_fields.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_update_perpetual_position_aggregate_fields.sql rename to indexer/services/ender/src/scripts/helpers/dydx_update_perpetual_position_aggregate_fields.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid_from_asset_position_parts.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid_from_asset_position_parts.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid_from_asset_position_parts.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid_from_asset_position_parts.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid_from_fill_event_parts.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid_from_fill_event_parts.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid_from_fill_event_parts.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid_from_fill_event_parts.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid_from_funding_index_update_parts.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid_from_funding_index_update_parts.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid_from_funding_index_update_parts.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid_from_funding_index_update_parts.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid_from_oracle_price_parts.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid_from_oracle_price_parts.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid_from_oracle_price_parts.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid_from_oracle_price_parts.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid_from_order_id.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid_from_order_id.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid_from_order_id.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid_from_order_id.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid_from_order_id_parts.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid_from_order_id_parts.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid_from_order_id_parts.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid_from_order_id_parts.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid_from_perpetual_position_parts.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid_from_perpetual_position_parts.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid_from_perpetual_position_parts.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid_from_perpetual_position_parts.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid_from_subaccount_id.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid_from_subaccount_id.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid_from_subaccount_id.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid_from_subaccount_id.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid_from_subaccount_id_parts.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid_from_subaccount_id_parts.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid_from_subaccount_id_parts.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid_from_subaccount_id_parts.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid_from_transaction_parts.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid_from_transaction_parts.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid_from_transaction_parts.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid_from_transaction_parts.sql diff --git a/indexer/services/ender/src/scripts/dydx_uuid_from_transfer_parts.sql b/indexer/services/ender/src/scripts/helpers/dydx_uuid_from_transfer_parts.sql similarity index 100% rename from indexer/services/ender/src/scripts/dydx_uuid_from_transfer_parts.sql rename to indexer/services/ender/src/scripts/helpers/dydx_uuid_from_transfer_parts.sql diff --git a/indexer/services/ender/src/scripts/create_extension_pg_stat_statements.sql b/indexer/services/ender/src/scripts/setup/create_extension_pg_stat_statements.sql similarity index 100% rename from indexer/services/ender/src/scripts/create_extension_pg_stat_statements.sql rename to indexer/services/ender/src/scripts/setup/create_extension_pg_stat_statements.sql diff --git a/indexer/services/ender/src/scripts/create_extension_uuid_ossp.sql b/indexer/services/ender/src/scripts/setup/create_extension_uuid_ossp.sql similarity index 100% rename from indexer/services/ender/src/scripts/create_extension_uuid_ossp.sql rename to indexer/services/ender/src/scripts/setup/create_extension_uuid_ossp.sql