Skip to content
Snippets Groups Projects
  1. Apr 09, 2024
    • godzie44's avatar
      feature: plugins · 26b11774
      godzie44 authored and Yaroslav Dynnikov's avatar Yaroslav Dynnikov committed
      Introduce a plugin system for picodata cluster.
      Plugin system contains:
      - `picoplugin` crate with plugin interfaces.
      This crate exposes plugin interfaces for user implementation and API
      that used by picodata to interact with plugin as with a code from dynamic library.
      - Support for plugin work cycle in picodata instance work cycle.
      Picodata instance interacts with running plugin by `PluginManager`
      component.
      Typically, plugins react to events that occur in instance or whole cluster.
      - New lua API with plugin CRUD actions.
          - pico.create_plugin - load a new plugin into picodata cluster
          - pico.remove_plugin - remove plugin from picodata cluster
          - pico.update_plugin_config - update plugin service configuration
      26b11774
    • Georgy Moshkin's avatar
    • Georgy Moshkin's avatar
  2. Mar 21, 2024
  3. Mar 13, 2024
    • Arseniy Volynets's avatar
      feat: support batch dml · ab377bad
      Arseniy Volynets authored and Georgy Moshkin's avatar Georgy Moshkin committed
      - Add new DML op: Batch, which allows
      using multiple dml operations in one
      CAS request
      - If request has too many dml operations,
      the batch will be splitted into multiple
      batches, so that each batch can be stored
      in raft log
      ab377bad
  4. Mar 06, 2024
  5. Feb 20, 2024
    • Arseniy Volynets's avatar
      refactor: move tracing from sbroad to picodata · 598ffbf4
      Arseniy Volynets authored
      - Update sbroad submodule to commit,
      with refactored tracing api: tracer
      can be provided by library user (us).
      - Use tracer that creates traces under
      admin, because traces are created randomly
      for 1% of the queries and the user may not
      have the privileges to create/modify tracing
      tables
      - Move tracing related logic to picodata repo.
      In particular, now all tables storing tracing
      - Add sql tests that were removed from sbroad
      during refactoring
      - added extra parameter 'query_id' to pico.sql
      lua api. 'query_id' is used to identify
      each query in tracing tables, if not specified
      hash function on query text is used.
      - changed signature of pico.sql to:
      pico.sql(pattern[, params, options)
      options={'traceable'=boolean,'query_id'=string}
      598ffbf4
  6. Feb 07, 2024
  7. Feb 05, 2024
  8. Jan 25, 2024
  9. Jan 18, 2024
  10. Dec 19, 2023
  11. Dec 07, 2023
  12. Dec 04, 2023
  13. Dec 03, 2023
  14. Nov 20, 2023
  15. Nov 16, 2023
  16. Nov 08, 2023
  17. Nov 07, 2023
  18. Nov 06, 2023
    • Kurdakov Alexander's avatar
      feat: add tier entity · 701aa4ab
      Kurdakov Alexander authored
      Transferred replication factor from Properties table to new Tier table
      
      Instance and Replicaset belongs to tier via new field tier in _pico_instance and _pico_replicaset
      
      New cli option init-cfg with path to configuration file in yaml format. For now contains only info about tiers.
      701aa4ab
  19. Nov 03, 2023
  20. Nov 01, 2023
    • Denis Smirnov's avatar
      feat!: implement entrypoints for PG extended protocol · efeb345c
      Denis Smirnov authored
      
      BREAKING CHANGE!:
      - pico.trace() function was removed. Use pico.sql() for tracing;
      - opentelemetry tables __SBROAD_STAT and __SBROAD_QUERY were renamed
        into _SQL_STAT and _SQL_QUERY tables.
      
      Introduce enrypoints for extended PG protocol:
      
      - pg_bind: bind parameters to portal (IR) by descriptor;
      - pg_close: remove portal from the storage by descriptor;
      - pg_describe: get the portal metadata and type by descriptor;
      - pg_execute: execute portal by descriptor;
      - pg_parse: parse an SQL pattern into IR (reusing LRU),
        save IR into portal storage and return the descriptor;
      - pg_portals: get a list of portal descriptors visible
        to the current user;
      
      Co-authored-by: default avatarKaitmazian Maksim <m.kaitmazian@picodata.io>
      Verified
      efeb345c
  21. Sep 21, 2023
  22. Aug 29, 2023
  23. Aug 23, 2023
  24. Aug 15, 2023
  25. Aug 07, 2023
Loading