Перейти к основному содержимому

Ошибка Invalid Page Header в отчётах

Обзор

Существует много разных типов ошибок, но одна из самых пугающих — когда ваши данные исчезают и заменяются строками красного текста. Очень распространённая проблема — ошибка Invalid Page Header, которая может выглядеть примерно так:

Poker Tracker 4 Error

Эту ошибку можно определить, посмотрев на всю строку сообщения об ошибке. Например, вот строка ошибки из изображения выше:

Ошибка при обновлении базы данных: PokerTracker 4 Database

Ошибка:

Не удалось выполнить запрос: INSERT INTO temp_cash_hand_player_statistics (SELECT id_hand, id_gametype, id_player, id_player_real, id_holecard, id_limit, id_session, date_played, "position", cnt_players, cnt_players, cnt_p_raise, flg_p_first_raise, cnt_p_call, flg_p_limp, flg_p_fold, flg_p_ccall, cnt_p_face_limpers, flg_vpip, flg_f_bet, cnt_f_raise, flg_f_first_raise, cnt_f_call, flg_f_check, flg_f_check_raise, flg_f_fold, flg_f_saw, flg_t_bet, cnt_t_raise, flg_t_first_raise, cnt_t_call, flg_t_check, flg_t_check_raise, flg_t_fold, flg_t_saw, flg_r_bet, cnt_r_raise, flg_r_first_raise, cnt_r_call, flg_r_check, flg_r_check_raise, flg_r_fold, flg_r_saw, enum_allin, enum_face_allin, enum_face_allin_action, flg_blind_s, flg_blind_b, flg_blind_ds, flg_blind_db, flg_sb_steal_fold, flg_bb_steal_fold, flg_blind_def_opp, flg_steal_att, flg_steal_opp, flg_blind_k, flg_showdown, flg_won_hand, amt_won, amt_expected_won, val_equity, id_final_hand, id_final_hand_lo, flg_showed, enum_folded, flg_p_face_raise, flg_p_3bet, flg_p_3bet_opp, flg_p_3bet_def_opp, enum_p_3bet_action, flg_p_4bet, flg_p_4bet_opp, flg_p_4bet_def_opp, enum_p_4bet_action, flg_p_squeeze, flg_p_squeeze_opp, flg_p_squeeze_def_opp, enum_p_squeeze_action, flg_f_face_raise, flg_f_3bet, flg_f_3bet_opp, flg_f_3bet_def_opp, enum_f_3bet_action, flg_f_4bet, flg_f_4bet_opp, flg_f_4bet_def_opp, enum_f_4bet_action, flg_f_cbet, flg_f_cbet_opp, flg_f_cbet_def_opp, enum_f_cbet_action, flg_t_face_raise, flg_t_3bet, flg_t_3bet_opp, flg_t_3bet_def_opp, enum_t_3bet_action, flg_t_4bet, flg_t_4bet_opp, flg_t_4bet_def_opp, enum_t_4bet_action, flg_t_cbet, flg_t_cbet_opp, flg_t_cbet_def_opp, enum_t_cbet_action, flg_t_float, flg_t_float_opp, flg_t_float_def_opp, enum_t_float_action, flg_t_donk, flg_t_donk_opp, flg_t_donk_def_opp, enum_t_donk_action, flg_r_face_raise, flg_r_3bet, flg_r_3bet_opp, flg_r_3bet_def_opp, enum_r_3bet_action, flg_r_4bet, flg_r_4bet_opp, flg_r_4bet_def_opp, enum_r_4bet_action, flg_r_cbet, flg_r_cbet_opp, flg_r_cbet_def_opp, enum_r_cbet_action, flg_r_float, flg_r_float_opp, flg_r_float_def_opp, enum_r_float_action, flg_r_donk, flg_r_donk_opp, flg_r_donk_def_opp, enum_r_donk_action, val_curr_conv FROM cash_hand_player_statistics );; Причина: Fatal Error (ERROR: invalid page header in block 8671 of relation "cash_hand_player_statistics" )

Самое важное в строке ошибки — это причина. В приведённом выше примере причина такова:

Reason: Fatal Error (ERROR: invalid page header in block xxxx of relation "xxxxx" )

Для ошибки invalid page header вероятны два варианта. Либо повреждена база данных, либо проблема в аппаратном обеспечении. Ниже описано, как устранить обе причины.

Повреждение базы данных

Возможно, данные были повреждены из-за сбоя компьютера. Это легко исправить, перестроив индекс вашей базы данных PokerTracker 4 и пересоздав кэш. Просто перейдите в Database-> Database Management в главном меню. Выберите проблемную базу данных, а затем нажмите Rebuild Cache. Этот процесс выполнит перестроение индексов базы данных, VACUUM и ANALYZE базы данных, а затем пересоздаст кэш базы данных.

Reindexing Poker Tracker 4 Error

(Примечание: для больших баз данных этот процесс может занять некоторое время. Пожалуйста, наберитесь терпения и дождитесь завершения процесса, чтобы обеспечить оптимальный результат)

Повторный импорт базы данных

Вы также можете пересоздать базу данных, создав новую базу данных PokerTracker 4 и повторно импортировав раздачи. Для некоторых пользователей это может быть неудобно, поэтому рекомендуется сначала попробовать перестроить индекс базы данных.

Неисправное оборудование

Ещё одна возможная причина этой ошибки — неисправное оборудование. Вы можете настроить PostgreSQL так, чтобы он игнорировал эти ошибки, следуя рекомендациям из PostgreSQL Troubleshooting Guide.

warning

Если проблемы с жёстким диском продолжаются, стоит рассмотреть его замену на новый HDD со скоростью 7200 RPM или выше либо на SSD.