Skip to content

Instantly share code, notes, and snippets.

@dantleech
Last active April 29, 2016 12:12
Show Gist options
  • Select an option

  • Save dantleech/ca2313ea57d9c1834e3f2f65ae58d7be to your computer and use it in GitHub Desktop.

Select an option

Save dantleech/ca2313ea57d9c1834e3f2f65ae58d7be to your computer and use it in GitHub Desktop.

Synchronization Manager Next Steps

Problems:

Cold synchronization (push)

It is not possible to sync all documents using at once on an empty TDM - references will not be found and things will break.

Route conflicts on pull or Current Behavior

Given the following tree in the SDM:

/
  content/
    P1/
      P2/
        P3/
  routes/
    R1/
      R2/
        R3/
  1. You syncrhonize P1 to the TDM

The PDM now looks like this:

/
  content/
    P1/
  routes/
    R1/
  1. You change the URL of P1 in the SDM:
/
  content/
    P1/      <-- renamed URL
      P2/
        P3/
  routes/
    R1/      <-- history route for P1
      R2/    <-- history route for P2
        R3/  <-- history route for P3
    R4/      <-- new route for P1
      R5/    <-- new route for P2
        R6/  <-- new route for P3

(note R1 is not the node name, it is a uniquely identified node)

New routes R4, R5 and R6 are created which are the primary routes for P1, P2 and P3, whilst R1, R2 and R3 are now coverted to history (or redirect) routes.

  1. You pull P1 from the TDM to the SDM

The current behavior is as follows:

/
  content/
    P1/      <-- synchronized
      P2/
        P3/
  routes/
    R1/      <-- replaced with R1
      R2/    <-- no action
        R3/  <-- no action
    R4/      <-- replaced with a generic node
      R5/    <-- primary route for P2
        R6/  <-- primary route for P3

This means that while R1 and P1 are restored, the unsynchronized pages P2 and P3 will still have the URLs that they were assigned when P1 was renamed in (2).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment