Skip to content
Snippets Groups Projects
  1. Dec 04, 2023
    • Dmitry Ivanov's avatar
      fix(audit): fix broken instance-related events · f231da1f
      Dmitry Ivanov authored
      This patch reintroduces instance-related events (e.g. `join_instance`)
      which were accidentally disabled in a bugfix of the DML handler (see
      commit 52ed9237 for more information) due to the lack of tests.
      
      Furthermore, this patch adds the following events:
      
      * expel_instance
      * change_config, which tracks changes in `_pico_property`
      
      This was the original intended change of the patch, but the apparent
      breakage of the preexisting events called for action.
      f231da1f
    • Егор Ивков's avatar
      feat: track owner of tables, roles and users · a98dc691
      Егор Ивков authored
      This change allows for creators of corresponding objects to consequently have all privileges on them.
      a98dc691
  2. Dec 03, 2023
  3. Dec 01, 2023
  4. Nov 29, 2023
    • Kurdakov Alexander's avatar
      0c96fceb
    • Dmitry Ivanov's avatar
      feat(audit): implement composite record id · 1340f8a3
      Dmitry Ivanov authored
      Logically, the record id consists of 3 fields:
      * `raft_id` -- raft id of the current node (or `null` if uninitialized);
      * `count` -- in-memory id which is auto incremented for each new record;
      * `gen` -- persistent id which is incremented each time node is started.
      
      However, in practice they are stored inside a global `LogicalClock`.
      
      This is what the record looks like now:
      
      ```json
      {
        "id": "1.0.3",
        "instance_id": "i1",
        "message": "a new instance `i1` joined the cluster",
        "raft_id": "1",
        "severity": "low",
        "time": "2023-11-29T17:07:36.524+0300",
        "title": "join_instance"
      }
      ```
      
      Note how those fields are concatenated using `.`; the resulting
      unique id is represented by a json string type.
      
      Furthermore, since audit record logger now depends on the
      raft machine's state, we decided to move its initialization
      further into the init sequence (postjoin).
      1340f8a3
  5. Nov 28, 2023
  6. Nov 27, 2023
Loading