- Apr 24, 2024
-
-
Now for installation and enable plugin, there are two steps instead of one (`pico.load_plugin` previously). 1. Install plugin (`pico.install_plugin`): validate plugin, create system tables. 2. Enable plugin (`pico.enable_plugin`): loads plugin into instances memory, call `on_start` callback. Same for a plugin removing process (`pico.remove_plugin` previously): 1. Disable plugin (`pico.disable_plugin`): call `on_stop` callbacks, drop plugin from instances. 2. Remove plugin (`pico.remove_plugin`): remove plugin meta from system tables.
-
- 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
-