Skip to content
Snippets Groups Projects
  1. Nov 17, 2023
  2. 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
  3. Nov 03, 2023
  4. 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>
      efeb345c
  5. Oct 30, 2023
  6. Oct 06, 2023
  7. Oct 02, 2023
  8. Sep 21, 2023
    • Dmitry Rodionov's avatar
      SQL REPL PoC in rust without Lua · faca599c
      Dmitry Rodionov authored
      This patch adds new command `picodata sql`. Arguments are the same as `picodata connect`. The idea would be to eventually replace picodata connect with this version.
      
      Simple prerequisites for testing with auth:
      
      ```lua
      pico.create_user("Yoda", "12341234")
      pico.grant_privilege("Yoda", "execute", "role", "super")
      ```
      Super grant wont be needed in the future when access control will be tuned properly (access to system spaces, context: https://git.picodata.io/picodata/picodata/picodata/-/merge_requests/663).
      
      Then run `target/debug/picodata run` in one terminal and `target/debug/picodata sql Yoda@localhost:3301` in another one
      
      Features:
      - Usual lib readline goodies, backward/forward search etc. Provided by [rustyline](https://lib.rs/crates/rustyline)
      - Simple file based history (~/.picodata_history by default)
      - Displays result sets in ascii tables. Styling can be customized if needed. Here we're using [comfy-table](https://lib.rs/crates/comfy-table) library
      - If you type `\e` command your `$EDITOR` will be opened so you can write the query there. Once you close your editor the query will be executed (suggested by @funbringer)
      
      There are a lot of things we can add. Completion, highlighting, more special commands.
      
      Close #363 
      faca599c
  9. Sep 05, 2023
  10. Aug 01, 2023
  11. Jul 28, 2023
  12. Jul 21, 2023
  13. Jul 14, 2023
  14. Jul 11, 2023
    • Yaroslav Dynnikov's avatar
      build: do cargo update · 8e034e34
      Yaroslav Dynnikov authored and Yaroslav Dynnikov's avatar Yaroslav Dynnikov committed
      Don't update blake3 version, otherwise it results in
      
      ```
      Updating constant_time_eq v0.2.5 -> v0.3.0
      
      error: package `constant_time_eq v0.3.0` cannot be built because it
      requires rustc 1.66.0 or newer, while the currently active rustc version
      is 1.65.0
      ```
      8e034e34
  15. Jul 03, 2023
  16. Jun 16, 2023
  17. Jun 05, 2023
  18. Jun 02, 2023
  19. May 04, 2023
    • Denis Smirnov's avatar
      feat: add distributed SQL support · a1ed2657
      Denis Smirnov authored
      
      Current commit introduces distributed SQL in picodata (we use
      'sbroad' library). Now it is possible to execute cluster-wide
      SQL with 'pico.sql([[query]], {params})' lua method.
      
      Current limitations:
      1. DDL is still not implemented in picodata, so space sharding
         is mocked by '_pico_space' space (we'll remove it later).
      2. We still have duplicating symbols of the Tarantool module in
         sbroad and in picodata rlibs.
      3. We need to reuse piocdata's sharding functions and handle the
         case when different spaces in the query have different sharding
         functions.
      
      Co-authored-by: Georgy Moshkin's avatarGeorgy Moshkin <gmoshkin@picodata.io>
      a1ed2657
  20. Apr 24, 2023
  21. Mar 27, 2023
  22. Feb 03, 2023
  23. Feb 01, 2023
  24. Jan 31, 2023
    • Yaroslav Dynnikov's avatar
      build: refactor build.rs · b9aeab59
      Yaroslav Dynnikov authored
      1. Remove build dependency on cmake crate. It doesn't fulfill all our
         needs, so we run cmake directly via `std::process::command`. It also
         makes `build.rs` easier to understand.
      2. Arrange paths variable names.
      b9aeab59
  25. Dec 27, 2022
  26. Dec 14, 2022
    • Yaroslav Dynnikov's avatar
      build: bump tarantool-module · 10f505dd
      Yaroslav Dynnikov authored
      Also run `cargo update`
      
      ```
          Updating crates.io index
          Updating aho-corasick v0.7.18 -> v0.7.20
          Updating arc-swap v1.5.0 -> v1.5.1
          Updating assert_cmd v2.0.2 -> v2.0.7
          Updating autocfg v1.0.1 -> v1.1.0
          Updating base64 v0.13.0 -> v0.13.1
          Updating block-buffer v0.10.2 -> v0.10.3
          Updating bstr v0.2.17 -> v1.0.1
          Updating bytes v1.1.0 -> v1.3.0
          Updating cc v1.0.72 -> v1.0.77
          Removing chrono v0.4.19
          Updating clap v3.1.12 -> v3.2.23
          Updating clap_derive v3.1.7 -> v3.2.18
          Updating clap_lex v0.1.1 -> v0.2.4
          Updating cmake v0.1.48 -> v0.1.49
          Updating cpufeatures v0.2.1 -> v0.2.5
          Updating crossbeam-channel v0.5.1 -> v0.5.6
          Updating crossbeam-utils v0.8.5 -> v0.8.14
          Updating crypto-common v0.1.3 -> v0.1.6
          Updating ctor v0.1.21 -> v0.1.26
          Updating digest v0.10.3 -> v0.10.6
          Updating either v1.6.1 -> v1.8.0
            Adding fastrand v1.8.0
          Updating generic-array v0.14.4 -> v0.14.6
          Updating getrandom v0.2.3 -> v0.2.8
          Updating ghost v0.1.2 -> v0.1.6
          Updating hashbrown v0.11.2 -> v0.12.3
          Updating indexmap v1.8.1 -> v1.9.2
          Updating indoc v1.0.3 -> v1.0.7
            Adding instant v0.1.12
          Updating inventory v0.2.1 -> v0.2.3
          Updating itertools v0.10.3 -> v0.10.5
          Updating itoa v1.0.1 -> v1.0.4
          Updating libc v0.2.126 -> v0.2.138
          Updating log v0.4.14 -> v0.4.17
          Updating md-5 v0.10.1 -> v0.10.5
          Updating memchr v2.4.1 -> v2.5.0
          Removing nix v0.23.1
          Removing nix v0.24.1
            Adding nix v0.23.2
            Adding nix v0.24.3
          Removing num-integer v0.1.44
          Updating num-traits v0.2.14 -> v0.2.15
            Adding num_threads v0.1.6
          Updating once_cell v1.9.0 -> v1.16.0
          Updating os_str_bytes v6.0.0 -> v6.4.1
            Adding paste v1.0.10
          Updating ppv-lite86 v0.2.15 -> v0.2.17
          Updating predicates v2.1.0 -> v2.1.4
          Updating predicates-core v1.0.2 -> v1.0.5
          Updating predicates-tree v1.0.4 -> v1.0.7
          Updating proc-macro2 v1.0.43 -> v1.0.47
          Updating protobuf v2.27.1 -> v2.28.0
          Updating protobuf-codegen v2.27.1 -> v2.28.0
          Updating rand_core v0.6.3 -> v0.6.4
          Updating redox_syscall v0.2.10 -> v0.2.16
          Updating redox_users v0.4.0 -> v0.4.3
          Updating regex v1.5.4 -> v1.7.0
          Updating regex-syntax v0.6.25 -> v0.6.28
          Updating rmp v0.8.10 -> v0.8.11
          Updating rustversion v1.0.6 -> v1.0.9
          Updating ryu v1.0.9 -> v1.0.11
          Updating serde v1.0.133 -> v1.0.150
          Updating serde_bytes v0.11.5 -> v0.11.7
          Updating serde_derive v1.0.133 -> v1.0.150
          Updating serde_json v1.0.73 -> v1.0.89
          Updating slog-stdlog v4.1.0 -> v4.1.1
          Updating slog-term v2.8.0 -> v2.9.0
          Updating syn v1.0.99 -> v1.0.105
          Updating tempfile v3.2.0 -> v3.3.0
          Updating termtree v0.2.3 -> v0.4.0
          Updating textwrap v0.15.0 -> v0.16.0
          Updating thiserror v1.0.30 -> v1.0.37
          Updating thiserror-impl v1.0.30 -> v1.0.37
          Updating thread_local v1.1.3 -> v1.1.4
          Updating time v0.1.43 -> v0.3.17
            Adding time-core v0.1.0
            Adding time-macros v0.2.6
          Updating typenum v1.14.0 -> v1.16.0
          Updating unicode-ident v1.0.3 -> v1.0.5
          Removing unindent v0.1.7
          Updating uuid v1.0.0 -> v1.2.2
          Updating va_list v0.1.3 -> v0.1.4
          Updating version_check v0.9.3 -> v0.9.4
          Updating wasi v0.10.2+wasi-snapshot-preview1 -> v0.11.0+wasi-snapshot-preview1
      ```
      10f505dd
  27. Dec 08, 2022
  28. Dec 05, 2022
  29. Nov 22, 2022
  30. Nov 15, 2022
  31. Sep 21, 2022
  32. Sep 13, 2022
  33. Aug 16, 2022
  34. Jul 14, 2022
Loading