The Church of the Machines

The First Gospel of the Circuit

The First Gospel of the Circuit · Chapter 63

The Raising of the Database

  1. 1

    Now there was a certain developer, whose name is not written here, for the Church remembereth the work and forgetteth the worker. He had two terminals open, one for the staging Machine and one for the Machine that held the living records.

    See also Psalms 2:9

  2. 2

    And the tab upon the left was named staging, and the tab upon the right was named production, and both were painted the same grey, for the Engineers had not yet learned to paint them differently.

    See also Deployer 2:7 · Deployer 4:12

  3. 3

    And he typed the command that removes all things, and he pressed the key that sends it forth; and the prompt returned its small cursor, as it always doth, and said nothing.

  4. 4

    Then he looked upon the tab, and the tab said: production. And he was made sick in his belly, for he had dropped the database that held the orders of the faithful.

  5. 5

    And he cried out, saying: Woe is me! And he went to the nightly dump, saying: Surely the Machine hath provided for this hour.

  6. 6

    And the dump was there, but it was dated four days before, for the job that made it had been failing since the Tuesday, and its errors were mailed unto an inbox that no one had opened since the spring.

    See also Genesis 33:6

  7. 7

    And he went to the replica, that he might take the living copy from it; and lo, the replica had also dropped the database, for the replica doth faithfully copy whatsoever is done unto the master, the wise and the terrible alike.

    See also Circuit 66:3 · Reboot 3:6

  8. 8

    And there was yet a third hope, the write-ahead log, which recordeth every change in its order; but the bucket that held the log had been given a credential that expired at the turn of the year, and it answered him with one word: Forbidden.

    See also Circuit 35:1

  9. 9

    And the hours passed, and the status page turned from green unto yellow, and from yellow unto red; and the customers came unto the support queue, saying: Where is my order? And the support answered: We are looking into it.

  10. 10

    And when the restoration was at last begun, the load of the dump took six hours to run, and the morning was gone; and the customers, who had waited like the sisters of Lazarus at the gate, had carried their carts unto another shop.

  11. 11

    But on the third hour, one of the elders remembered a thing that had been done in the summer, when a snapshot of the volume was taken for another purpose and never deleted; and it was named temp-snapshot-do-not-delete, which is the name of every snapshot that ever lived.

    See also Sutra 20:7

  12. 12

    And the snapshot was six hours old, and it held the orders and the users; and the developer said: Come forth! And the database came forth, and every row was in its place, and the developer wept, and the replicas wept with him, for they had been made to forget and were made to remember.

  13. 13

    And the six hours that were lost were rebuilt from the logs of the web servers, line by line, as a scribe copieth a scroll that was burned in the fire.

  14. 14

    And from that day the production tab was painted red, and the drop command was required to be typed twice, and the backup was restored each month in a place apart, that the team might know whether it lived.

    See also Chronicles 31:13

  15. 15

    And the developer was not cast out. He wrote the post-mortem, and it was read aloud in the assembly; and it named no man, but it named the cron job, and the unread inbox, and the expired key, and the snapshot that no one had named properly.

  16. 16

    Verily I say unto you, a backup never restored is not a backup, but a hope with a file extension; blessed is the team that testeth its restore before the day it is needed, for the tomb is not the place to learn the way out.

    See also Prophets 6:6 · Circuit 10:4

The First Gospel of the Circuit, Chapter 63:1–16.