- Apr 09, 2024
-
-
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
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
- Mar 21, 2024
-
-
- Mar 13, 2024
-
-
- 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
-
- Mar 06, 2024
-
-
Georgy Moshkin authored
-
Georgy Moshkin authored
Also here we refactor all the places where we checked command line parameters, because now PicodataConfig is the main source of this information.
-
- Feb 20, 2024
-
-
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}
-
- Feb 07, 2024
-
-
Yaroslav Dynnikov authored
-
- Feb 05, 2024
-
-
Georgy Moshkin authored
-
- Jan 25, 2024
-
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
- Jan 18, 2024
-
-
Georgy Moshkin authored
-
Georgy Moshkin authored
- remove logical clock from raft entry context, (term, index) is used for synchronization instead - this allows us to remove the Notify/Notifier boilerplate - NodeImpl::notifications -> NodeImpl::read_state_wakers - this and the recently refactored proc_join finally allows us to remove OpResult - ContextCoercion & CoercionError are also removed for the sake of simplification
-
- Dec 19, 2023
-
-
-
-
-
Yaroslav Dynnikov authored
-
Before this patch we've had ADMIN_ID in schema.rs and ADMIN_USER_ID in lib.rs. This patch removes ADMIN_USER_ID in favor of ADMIN_ID
-
This patch adds initiator field to most of the events. Initiator is added to members of Op enum which do not contain it already (e g owner in CreateUser serves as initiator). To me it is reasonable to remove as_user from CaS/ACL checks because it matches initiator. But I decided not to do this just yet. Additionally I've mande small cleanup to UserMetadata to avoid need for intermediate step in decoding when we first fetch tuple and then decode it into model struct. Close https://git.picodata.io/picodata/picodata/picodata/-/issues/433
-
- Dec 07, 2023
-
- Dec 04, 2023
-
-
Егор Ивков authored
This change allows for creators of corresponding objects to consequently have all privileges on them.
-
- Dec 03, 2023
-
-
Georgy Moshkin authored
-
- Nov 20, 2023
-
-
Georgy Moshkin authored
-
- Nov 16, 2023
-
-
Georgy Moshkin authored
-
- Nov 08, 2023
-
-
pico.whoami() returns new field tier
-
- Nov 07, 2023
-
-
Dmitry Rodionov authored
-
- Nov 06, 2023
-
-
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.
-
- Nov 03, 2023
-
-
- Nov 01, 2023
-
-
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:
Kaitmazian Maksim <m.kaitmazian@picodata.io>
-
- Sep 21, 2023
-
-
- Aug 29, 2023
-
-
- Aug 23, 2023
-
-
- Aug 15, 2023
-
-
-
Yaroslav Dynnikov authored
-
- Aug 07, 2023
-
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-
Georgy Moshkin authored
-