[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2024-04-23 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-19190:

Status: Ready to Commit  (was: Review In Progress)

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 5.1-alpha1
>
> Attachments: ci_summary-2.html
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in {{system.metadata_snapshots}} so that we can avoid having 
> to re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2024-04-23 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-19190:

Reviewers: Marcus Eriksson
   Status: Review In Progress  (was: Patch Available)

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 5.1-alpha1
>
> Attachments: ci_summary-2.html
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in {{system.metadata_snapshots}} so that we can avoid having 
> to re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2024-04-23 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-19190:

Source Control Link: 
https://github.com/apache/cassandra/commit/17ecece5437ab39aaeaa0eb4b42434cddd9960b5
 Resolution: Fixed
 Status: Resolved  (was: Ready to Commit)

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 5.1-alpha1
>
> Attachments: ci_summary-2.html
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in {{system.metadata_snapshots}} so that we can avoid having 
> to re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2024-04-23 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-19190:

Attachment: (was: ci_summary-1.html)

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 5.1-alpha1
>
> Attachments: ci_summary-2.html
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in {{system.metadata_snapshots}} so that we can avoid having 
> to re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2024-04-23 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-19190:

Attachment: (was: ci_summary.html)

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 5.1-alpha1
>
> Attachments: ci_summary-2.html
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in {{system.metadata_snapshots}} so that we can avoid having 
> to re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2024-04-23 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-19190:

Attachment: ci_summary-2.html

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 5.1-alpha1
>
> Attachments: ci_summary-2.html
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in {{system.metadata_snapshots}} so that we can avoid having 
> to re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2024-04-22 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-19190:

Attachment: ci_summary-1.html

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 5.1-alpha1
>
> Attachments: ci_summary-1.html, ci_summary.html
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in {{system.metadata_snapshots}} so that we can avoid having 
> to re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2024-04-16 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-19190:

Attachment: ci_summary.html

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 5.1-alpha1
>
> Attachments: ci_summary.html
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in {{system.metadata_snapshots}} so that we can avoid having 
> to re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2024-04-16 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-19190:

Test and Documentation Plan: ci run
 Status: Patch Available  (was: Open)

ci looks bad right now, will rerun after CASSANDRA-19514 has been committed

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 5.1-alpha1
>
> Attachments: ci_summary.html
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in {{system.metadata_snapshots}} so that we can avoid having 
> to re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2023-12-18 Thread Sam Tunnicliffe (Jira)


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

Sam Tunnicliffe updated CASSANDRA-19190:

Change Category: Semantic
 Complexity: Normal
 Status: Open  (was: Triage Needed)

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 5.1-alpha1
>
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in {{system.metadata_snapshots}} so that we can avoid having 
> to re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2023-12-14 Thread Sam Tunnicliffe (Jira)


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

Sam Tunnicliffe updated CASSANDRA-19190:

Description: Per its inline comments, ForceSnapshot is a synthetic 
transformation whose purpose it to enable the local log to jump missing epochs. 
A common use for this is when replaying persisted events from the metadata log 
at startup. The log is initialised with {{Epoch.EMPTY}} but rather that 
replaying every single entry since the beginning of history, we select the most 
recent snapshot held locally and start the replay from that point. Likewise, 
when catching up from a peer, a node may receive a snapshot plus subsequent log 
entries. In order to bring local metadata to the same state as the snapshot, a 
{{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
{{LocalLog}} and enacted like any other other transformation. These synthetic 
transformations should not be persisted in the `system.local_metadata_log`, as 
they do not exist in the distributed metadata log. We _should_ persist the 
snapshot itself in {{system.metadata_snapshots}} so that we can avoid having to 
re-fetch remote snapshots (i.e. if a node were to restart shortly after 
receiving a catchup from a peer).  (was: Per its inline comments, ForceSnapshot 
is a synthetic transformation whose purpose it to enable the local log to jump 
missing epochs. A common use for this is when replaying persisted events from 
the metadata log at startup. The log is initialised with {{Epoch.EMPTY}} but 
rather that replaying every single entry since the beginning of history, we 
select the most recent snapshot held locally and start the replay from that 
point. Likewise, when catching up from a peer, a node may receive a snapshot 
plus subsequent log entries. In order to bring local metadata to the same state 
as the snapshot, a {{ForceSnapshot}} with the same epoch as the snapshot is 
inserted into the {{LocalLog}} and enacted like any other other transformation. 
These synthetic transformations should not be persisted in the 
`system.local_metadata_log`, as they do not exist in the distributed metadata 
log. We _should_ persist the snapshot itself in `system.metadata_snapshots` so 
that we can avoid having to re-fetch remote snapshots (i.e. if a node were to 
restart shortly after receiving a catchup from a peer).)

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Priority: Normal
> Fix For: 5.1-alpha1
>
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in {{system.metadata_snapshots}} so that we can avoid having 
> to re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-19190) ForceSnapshot transformations should not be persisted in the local log table

2023-12-11 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-19190:

Fix Version/s: 5.1-alpha1

> ForceSnapshot transformations should not be persisted in the local log table
> 
>
> Key: CASSANDRA-19190
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19190
> Project: Cassandra
>  Issue Type: Improvement
>  Components: Transactional Cluster Metadata
>Reporter: Marcus Eriksson
>Priority: Normal
> Fix For: 5.1-alpha1
>
>
> Per its inline comments, ForceSnapshot is a synthetic transformation whose 
> purpose it to enable the local log to jump missing epochs. A common use for 
> this is when replaying persisted events from the metadata log at startup. The 
> log is initialised with {{Epoch.EMPTY}} but rather that replaying every 
> single entry since the beginning of history, we select the most recent 
> snapshot held locally and start the replay from that point. Likewise, when 
> catching up from a peer, a node may receive a snapshot plus subsequent log 
> entries. In order to bring local metadata to the same state as the snapshot, 
> a {{ForceSnapshot}} with the same epoch as the snapshot is inserted into the 
> {{LocalLog}} and enacted like any other other transformation. These synthetic 
> transformations should not be persisted in the `system.local_metadata_log`, 
> as they do not exist in the distributed metadata log. We _should_ persist the 
> snapshot itself in `system.metadata_snapshots` so that we can avoid having to 
> re-fetch remote snapshots (i.e. if a node were to restart shortly after 
> receiving a catchup from a peer).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org