timesource 0.1.2

Event sourcing with TimescaleDb
Documentation
{
  "db": "PostgreSQL",
  "01a53f244e14a486d356faf2edf0ddb93acd16a146a1886eaf2ee991df418ae2": {
    "query": "SELECT\n  e.aggregate_id,\n  n.name,\n  e.payload,\n  e.time,\n  e.sequence\nFROM event e\nLEFT JOIN event_name n\n  ON e.name_id = n.id\nWHERE\n  e.aggregate_type_id = $1 AND\n  e.sequence > $2 AND\n  e.sequence <= $3\nORDER BY e.sequence;",
    "describe": {
      "columns": [
        {
          "ordinal": 0,
          "name": "aggregate_id",
          "type_info": "Uuid"
        },
        {
          "ordinal": 1,
          "name": "name",
          "type_info": "Text"
        },
        {
          "ordinal": 2,
          "name": "payload",
          "type_info": "Jsonb"
        },
        {
          "ordinal": 3,
          "name": "time",
          "type_info": "Int8"
        },
        {
          "ordinal": 4,
          "name": "sequence",
          "type_info": "Int8"
        }
      ],
      "parameters": {
        "Left": [
          "Int4",
          "Int8",
          "Int8"
        ]
      },
      "nullable": [
        false,
        false,
        true,
        false,
        false
      ]
    }
  },
  "1e1ef16f3e9944aa7bea02b7577ac3eac6d1ce29a907d8f65acd5cff1b592c1e": {
    "query": "SELECT * FROM subscription_offset($1, $2);",
    "describe": {
      "columns": [
        {
          "ordinal": 0,
          "name": "_offset",
          "type_info": "Int8"
        }
      ],
      "parameters": {
        "Left": [
          "Text",
          "Int4"
        ]
      },
      "nullable": [
        null
      ]
    }
  },
  "2a1f0f16636355993820ddefd510cab493d7a79e2a874061e298e7ebe72888d5": {
    "query": "UPDATE aggregate_subscription s\nSET \"offset\" = $2\nWHERE s.\"name\" = $1;",
    "describe": {
      "columns": [],
      "parameters": {
        "Left": [
          "Text",
          "Int8"
        ]
      },
      "nullable": []
    }
  },
  "2b4ce0f42f27fcd168ac6fcae998a18883b85febfd8720baf49e550e2349572f": {
    "query": "SELECT\n  e.aggregate_id,\n  n.name,\n  e.payload,\n  e.time,\n  e.sequence\nFROM event e\nLEFT JOIN event_name n\n  ON e.name_id = n.id\nWHERE e.aggregate_type_id = $1 AND e.sequence > $2\nORDER BY e.sequence\nLIMIT $3;",
    "describe": {
      "columns": [
        {
          "ordinal": 0,
          "name": "aggregate_id",
          "type_info": "Uuid"
        },
        {
          "ordinal": 1,
          "name": "name",
          "type_info": "Text"
        },
        {
          "ordinal": 2,
          "name": "payload",
          "type_info": "Jsonb"
        },
        {
          "ordinal": 3,
          "name": "time",
          "type_info": "Int8"
        },
        {
          "ordinal": 4,
          "name": "sequence",
          "type_info": "Int8"
        }
      ],
      "parameters": {
        "Left": [
          "Int4",
          "Int8",
          "Int8"
        ]
      },
      "nullable": [
        false,
        false,
        true,
        false,
        false
      ]
    }
  },
  "39622c775666c1bdc26736f70cfe7faee1ec63696cf082b3187aa19471738d9d": {
    "query": "SELECT \n  n.id,\n  n.name\nFROM event_name n\nWHERE n.aggregate_type_id = $1\n-- get most recently created\nORDER BY n.id DESC\n-- cache size\nLIMIT $2;",
    "describe": {
      "columns": [
        {
          "ordinal": 0,
          "name": "id",
          "type_info": "Int4"
        },
        {
          "ordinal": 1,
          "name": "name",
          "type_info": "Text"
        }
      ],
      "parameters": {
        "Left": [
          "Int4",
          "Int8"
        ]
      },
      "nullable": [
        false,
        false
      ]
    }
  },
  "5e6815c5d634e0907bb32e1a79d84eed462895b349024c07409fea46e6cd2bd2": {
    "query": "SELECT * FROM event_name_id($1, $2);",
    "describe": {
      "columns": [
        {
          "ordinal": 0,
          "name": "_id",
          "type_info": "Int4"
        }
      ],
      "parameters": {
        "Left": [
          "Int4",
          "Text"
        ]
      },
      "nullable": [
        null
      ]
    }
  },
  "68146422ac75537c86006dc5373d7890cf11fca27a48a78fc74ada23d4abf6aa": {
    "query": "SELECT * FROM append_to_store($1, $2, $3, $4, $5);",
    "describe": {
      "columns": [
        {
          "ordinal": 0,
          "name": "last_event_time",
          "type_info": "Int8"
        }
      ],
      "parameters": {
        "Left": [
          "Int4",
          "Uuid",
          {
            "Custom": {
              "name": "_append_event_data",
              "kind": {
                "Array": {
                  "Custom": {
                    "name": "append_event_data",
                    "kind": {
                      "Composite": [
                        [
                          "data",
                          "Jsonb"
                        ],
                        [
                          "name_id",
                          "Int4"
                        ],
                        [
                          "time",
                          "Int8"
                        ]
                      ]
                    }
                  }
                }
              }
            }
          },
          "Bool",
          "Int8"
        ]
      },
      "nullable": [
        null
      ]
    }
  },
  "696a8028113d28012a2d3d0073da365eb042fae40838335ec7634da8d407182a": {
    "query": "SELECT\n  e.aggregate_id,\n  n.name,\n  e.payload,\n  e.time,\n  e.sequence\nFROM event e\n  INNER JOIN aggregate_subscription s\n    ON\n      e.aggregate_type_id = s.aggregate_type_id AND\n      e.sequence > coalesce(s.\"offset\", -9223372036854775808)\nLEFT JOIN event_name n\n  ON e.name_id = n.id\nWHERE e.aggregate_type_id = $1\nORDER BY e.sequence;",
    "describe": {
      "columns": [
        {
          "ordinal": 0,
          "name": "aggregate_id",
          "type_info": "Uuid"
        },
        {
          "ordinal": 1,
          "name": "name",
          "type_info": "Text"
        },
        {
          "ordinal": 2,
          "name": "payload",
          "type_info": "Jsonb"
        },
        {
          "ordinal": 3,
          "name": "time",
          "type_info": "Int8"
        },
        {
          "ordinal": 4,
          "name": "sequence",
          "type_info": "Int8"
        }
      ],
      "parameters": {
        "Left": [
          "Int4"
        ]
      },
      "nullable": [
        false,
        false,
        true,
        false,
        false
      ]
    }
  },
  "69cd158c6ae09d63b05bb13695d3d628750f6b1da594adf7109b09472b59af1d": {
    "query": "SELECT \n  e.aggregate_id,\n  n.name,\n  e.payload,\n  e.time,\n  e.sequence\nFROM event e\nLEFT JOIN event_name n\n  ON e.name_id = n.id\nWHERE\n  e.aggregate_type_id = $1 AND\n  e.aggregate_id = $2\nORDER BY e.time",
    "describe": {
      "columns": [
        {
          "ordinal": 0,
          "name": "aggregate_id",
          "type_info": "Uuid"
        },
        {
          "ordinal": 1,
          "name": "name",
          "type_info": "Text"
        },
        {
          "ordinal": 2,
          "name": "payload",
          "type_info": "Jsonb"
        },
        {
          "ordinal": 3,
          "name": "time",
          "type_info": "Int8"
        },
        {
          "ordinal": 4,
          "name": "sequence",
          "type_info": "Int8"
        }
      ],
      "parameters": {
        "Left": [
          "Int4",
          "Uuid"
        ]
      },
      "nullable": [
        false,
        false,
        true,
        false,
        false
      ]
    }
  },
  "a51e274a330cc46dc3fd2e644dbad205df801509ef2c8f0e93c5652f6fa1f59d": {
    "query": "SELECT * FROM aggregate_type_id($1);",
    "describe": {
      "columns": [
        {
          "ordinal": 0,
          "name": "_id",
          "type_info": "Int4"
        }
      ],
      "parameters": {
        "Left": [
          "Text"
        ]
      },
      "nullable": [
        null
      ]
    }
  },
  "dfc52f5eb115e08337db565f99d3a15ca7fc7aa3ad1e06087d3f04e8d7954bda": {
    "query": "SELECT * FROM try_subscription_checkout($1, $2);",
    "describe": {
      "columns": [
        {
          "ordinal": 0,
          "name": "try_subscription_checkout",
          "type_info": "Void"
        }
      ],
      "parameters": {
        "Left": [
          "Text",
          "Int8"
        ]
      },
      "nullable": [
        null
      ]
    }
  },
  "e1edc13fe1bc8c16533a4549a560b1dbe5689af986964f611e372347c40c1ca3": {
    "query": "DELETE FROM event\n  WHERE\n    aggregate_type_id = $1 AND\n    aggregate_id = $2;",
    "describe": {
      "columns": [],
      "parameters": {
        "Left": [
          "Int4",
          "Uuid"
        ]
      },
      "nullable": []
    }
  }
}