diff --git a/db/database_schema.sql b/db/database_schema.sql index 40e9e6b3e6dff20b3ae88693ad1f1d892abab21a..257be36ae8907781cbb5a2856a699ed1b5392bd8 100644 --- a/db/database_schema.sql +++ b/db/database_schema.sql @@ -70,6 +70,28 @@ CREATE TABLE IF NOT EXISTS active_votes PERFORM hive.app_register_table( __schema_name, 'active_votes', __schema_name ); + + EXECUTE format( + $BODY$ + CREATE OR REPLACE PROCEDURE %I.reptracker_process_blocks(_context_name hive.context_name, _block_range hive.blocks_range, _logs BOOLEAN = true) + LANGUAGE 'plpgsql' + AS + $pb$ + BEGIN + IF hive.get_current_stage_name(_context_name) = 'MASSIVE_PROCESSING' THEN + + CALL reptracker_massive_processing(_block_range.first_block, _block_range.last_block, _logs); + PERFORM hive.app_request_table_vacuum('%s.account_reputations', interval '10 minutes'); + PERFORM hive.app_request_table_vacuum('%s.active_votes', interval '10 minutes'); + PERFORM hive.app_request_table_vacuum('%s.permlinks', interval '100 minutes'); + RETURN; + END IF; + + CALL reptracker_single_processing(_block_range.first_block, _block_range.last_block, _logs); + END + $pb$ + $BODY$, __schema_name, __schema_name, __schema_name, __schema_name); + END $$; diff --git a/db/rep_helpers.sql b/db/rep_helpers.sql index ff8da796d09061a567cdc0277ada024704cb10cd..663406765c211c04af77e9810ceee7e77fdd27a6 100644 --- a/db/rep_helpers.sql +++ b/db/rep_helpers.sql @@ -61,24 +61,6 @@ END IF; END $$; -CREATE OR REPLACE PROCEDURE reptracker_process_blocks(_context_name hive.context_name, _block_range hive.blocks_range, _logs BOOLEAN = true) -LANGUAGE 'plpgsql' -AS -$$ -BEGIN - IF hive.get_current_stage_name(_context_name) = 'MASSIVE_PROCESSING' THEN - - CALL reptracker_massive_processing(_block_range.first_block, _block_range.last_block, _logs); - PERFORM hive.app_request_table_vacuum('reptracker_app.account_reputations', interval '10 minutes'); --eventually fixup hard-coded schema name - PERFORM hive.app_request_table_vacuum('reptracker_app.active_votes', interval '10 minutes'); --eventually fixup hard-coded schema nam - PERFORM hive.app_request_table_vacuum('reptracker_app.permlinks', interval '10 minutes'); --eventually fixup hard-coded schema name - RETURN; - END IF; - - CALL reptracker_single_processing(_block_range.first_block, _block_range.last_block, _logs); -END -$$; - CREATE OR REPLACE FUNCTION do_rep_indexes_exist() RETURNS BOOLEAN LANGUAGE 'plpgsql' VOLATILE