[ 
https://issues.apache.org/jira/browse/FINCN-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Juhan Aasaru updated FINCN-187:
-------------------------------
    Description: 
In current design there exists a problem that doesn't allow replay commands 
stored in Cassandra when restoring Postgres from a backup.

Postgres can be replicated but at one point the database (and replica) could 
become corrupt. So you restore it from the recent backup but you face the 
problem that the backup is probably at least several hours old. To solve the 
issue you could replay the commands in Cassandra to bring the database restored 
fromt the backup to the lasest state.

 
 The current problem however is that there are some commands that when they get 
executed,
 they create other commands as a result (when you replay such a command you 
will create a command again - although it exists already). So there should be a 
mechanism in place in Fineract-CN to identify such commands so one could skip 
executing them during replay
 (or some other stattegy to deal with this).

  was:
In current design there exists a problem that doesn't allow replay cassandra 
commands on Postgres disaster recovery.

Postgres can be replicated but at one point the database (and replica) could 
become corrupt.
So you restore it from the recent backup but you face the problem that the 
backup is probably at least several hours old. To solve the issue you could 
replay the commands in Cassandra to bring the database restored fromt the 
backup to the lasest state.

 
The current problem however is that there are some commands that when they get 
executed,
they create other commands as a result (when you replay such a command you will 
create a command again - although it exists already). So there should be a 
mechanism in place in Fineract-CN to identify such commands so one could skip 
executing them during replay
(or some other stattegy to deal with this).


> Postgres disaster recovery problem when replaying Cassandra commands
> --------------------------------------------------------------------
>
>                 Key: FINCN-187
>                 URL: https://issues.apache.org/jira/browse/FINCN-187
>             Project: Fineract Cloud Native
>          Issue Type: Improvement
>            Reporter: Juhan Aasaru
>            Priority: Major
>
> In current design there exists a problem that doesn't allow replay commands 
> stored in Cassandra when restoring Postgres from a backup.
> Postgres can be replicated but at one point the database (and replica) could 
> become corrupt. So you restore it from the recent backup but you face the 
> problem that the backup is probably at least several hours old. To solve the 
> issue you could replay the commands in Cassandra to bring the database 
> restored fromt the backup to the lasest state.
>  
>  The current problem however is that there are some commands that when they 
> get executed,
>  they create other commands as a result (when you replay such a command you 
> will create a command again - although it exists already). So there should be 
> a mechanism in place in Fineract-CN to identify such commands so one could 
> skip executing them during replay
>  (or some other stattegy to deal with this).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to