PrizmCore - 1.10.4.6 - Changelog

PrizmCore - 1.10.4.6 - Changelog

PRIZM Community


EN - English

(see RU below)


This update introduces requirements for node compatibility and protects the network from nodes that generates corrupted blockchains.


Background

  • update 1.10.4.5 fixed negative hold bug
  • some forging users did not update and continued to create blocks on version 1.10.4.4
  • the network of 1.10.4.4 nodes began to reproduce the error of negative hold, breaking their blockchain up into incompatible forks
  • due to the large amount of forging coins on version 1.10.4.4, updated nodes in version 1.10.4.5 evaluate forks created by the old version as more difficult
  • 1.10.4.5 nodes try to switch to the fork offered by versions 1.10.4.4, but during deep block checking, they register errors in the forks’ blockchain and return to the main blockchain, but do not have time to create enough blocks for the main blockchain to acquire sufficient complexity, and again try to switch to forks of 1.10.4.4 with higher complexity


Forks created by forging nodes on 1.10.4.4 will not be able to survive in the future due to broken blocks accumulating in a snowball.


This update allows the version 1.10.4.6 node to identify non-viable forks without rolling back blocks and deep checking the processing of broken blocks. This will allow 1.10.4.5 and 1.10.4.6 nodes to avoid constant overloads caused by faulty 1.10.4.4.



1. Added the ability to check compatibility between node versions

Now, upon detecting a fork of the blockchain with a higher complexity, the node requests a version of another node offering the fork. If the version of the other node is 1.10.4.4 or less, the node will ignore it.

Now the node has, in addition to its own version, information about the last compatible version of the PrizmCore. For PrizmCore 1.10.4.6, the latest compatible version is 1.10.4.5 (inclusive). Earlier versions are not considered a priority block source.


2. Added additional overload protection

Now the node will look at the proposed forks for the presence of root blocks (96755582169837052 and 16133133897806650422) of the largest non-viable forks. This is a backup protection mechanism against the influence of faulty nodes.

If these identifiers are located in the list of proposed blocks, the node will ignore the non-viable fork and avoid the cost of deep validation.


3. The new block version

Starting at height 1272727 blocks will have version 10.


Update

Hot switch from PrizmCore 1.10.4.5

  1. Stop PrizmCore
  2. Set “prizm.version = 1.10.4.6” inside prizm.default.properties
  3. Replace the old PrizmEngine.jar with the new one from the latest prizm-dist-1.10.4.6-linux.tgz package
  4. Launch PrizmCore


Update from PrizmCore 1.10.4.4

  1. Stop PrizmCore
  2. Delete the PrizmCore completely (including blockchain data stored inside prizm_db directory).
Use "Prizm Config" tool to delete blockchain on Windows and Mac.
  1. (optional) restore your own blockchain backup created at a height of less than 1,200,000 blocks; or restore an official blockchain backup at an altitude of 1,250,000 blocks
  2. Download and install the latest PrizmCore package (get in on GitHub)
  3. Launch PrizmCore





PrizmCore - 1.10.4.5 - История изменений

RU - Русский

(see EN above)

Это обновление вводит требования для совместимости узлов и защищает сеть от генерирующих повреждённые блокчейны узлов.


Бэкграунд

  • обновление 1.10.4.5 исправило ошибку отрицательного холда
  • некоторые форжащие пользователи не стали обновляться и продолжили создавать блоки на версии 1.10.4.4
  • сеть, состоящая из узлов версии 1.10.4.4 начала повторять ошибку отрицательного холда, распадаясь на несовместимые друг с другом форки
  • из-за большого количества форжащих монет на версии 1.10.4.4, обновлённые узлы версии 1.10.4.5 оценивают форки, созданные старой версии, как более сложные
  • узлы 1.10.4.5 пытаются перейти на форк, предлагаемый версиями 1.10.4.4, но при глубокой проверке блоков регистрируют ошибки в блкочейне форков и возвращаются в основной блокчейн, но не успевают создать достаточно блоков чтобы основной блокчейн приобрёл достаточную сложность, и повторно пытаются переключиться на форки 1.10.4.4 с более высокой сложностью


Форки, создаваемые форжащими узлами на 1.10.4.4 не смогут выжить в перспективе в силу накапливающихся снежным комом битых блоков.


Это обновление позволяет ноде версии 1.10.4.6 идентифицировать нежизнеспособные форки без отката блоков и глубокой проверки обработки битых блоков. Это позволит узлам 1.10.4.5 и 1.10.4.6 избежать постоянных перегрузок, вызванных неисправными 1.10.4.4.



1.  Добавлена функция проверки совместимости между версиями узлов

Теперь, обнаружив форк блокчейна с более высокой сложностью, нода запрашивает версию другой ноды, предлагающей форк. Если версия другой ноды 1.10.4.4 или меньше, нода его проигнорирует. 

Теперь нода имеет помимо собственной версии сведения о последней совместимой с ней версией ноды. Для ноды 1.10.4.6 последней совместимой версией является 1.10.4.5 (включительно). Более ранние версии не считаются приоритетным источником блоков.


2.  Дополнительная защита от перегрузки

Теперь нода будет просматривать предлагаемые ей форки на наличие корневых блоков (96755582169837052 и 16133133897806650422) крупнейших нежизнеспособных форков. Это резервный механизм защиты от влияния неисправных узлов.

Обнаружив эти идентификаторы в списке предлагаемых блоков, нода проигнорирует нежизнеспособный форк и избежит затрат на его глубокую проверку.


3. Новая версия блока

Начиная с высоте 1272727 блоки будут иметь версию 10.


Обновление

Горячее обновление с PrizmCore 1.10.4.5

  1. Остановите PrizmCore
  2. Установите “prizm.version=1.10.4.6” внутри prizm.default.properties
  3. Замените старый PrizmEngine.jar на новый из последнего пакета prizm-dist-1.10.4.6-linux.tgz
  4. Запустите PrizmCore


Обновление с PrizmCore 1.10.4.4

  1. Остановите PrizmCore
  2. Полностью удалите PrizmCore (обязательно удалите также и блокчейн в директории prizm_db)
Используйте утилиту "Prizm Config" для удаления блокчейна на Windows и Mac
  1. (опционально) восстановите собственную резервную копию блокчейна, созданную на высоте менее 1 200 000 блоков; либо восстановите официальную резервную копию блокчейна на высоте 1 250 000 блоков
  2. Скачайте и установите последнюю версию PrizmCore для своей платформы (ссылки можно найти на GitHub)
  3. Запустите PrizmCore





Report Page