

<alert type="success" icon="glyphicon glyphicon-user" dismiss="true">
**Checkpoint Processing** Note that this is a global Node setting.
</alert>

Now there is the following alg:
 - checkpoint is executed every hour(dtspace.checkpoint_interval) with block timeout 100 ms(dtspace.checkpoint_lock_timeout1) by timer or 
      if log reaches 50 mb(dtspace.log_size) with block timeout 200 ms(dtspace.checkpoint_lock_timeout2)
   - if checkpoint is failed due to block timeout, its managing is delegated to transaction manager
      - transaction manager tries to run checkpoint when there are no running transaction
      - also while transaction manager tries to find a moment when there are no transaction, timer runs checkpoint every 1 minute(dtspace.checkpoint_interval_repeat) with block timeout 200ms(dtspace.checkpoint_lock_timeout2)
      - if time since last checkpoint reaches 5 hours(dtspace.checkpoint_interval_critical) or log size reachs 150mb(dtspace.log_size_critical) checkpoint is executed with infinite block(like it was before)

There are new dataspace properties:
 - dtspace.checkpoint_interval_repeat
 - dtspace.checkpoint_interval_critical
 - dtspace.checkpoint_lock_timeout1
 - dtspace.checkpoint_lock_timeout2
 - dtspace.log_size_critical  

<panel type="default" title="Title of Panel" subtitle="Subtitle" icon="fa fa-home">
Also there are new dataspace commands
 - 'describe checkpoints’ - displays checkpoint configuration, current condition, last execution time, last attempt time, number of successful checkpoints, and etc.
 - 'describe checkpoints attempts’ - display last 2000 checkpoint attempts
</panel>
