Skip to content
Snippets Groups Projects
  1. Mar 30, 2023
  2. Mar 23, 2023
  3. Mar 20, 2023
  4. Mar 15, 2023
    • ms.evilhat's avatar
      fix(test): fix flaky test on cluster with replication · b67a8100
      ms.evilhat authored
      tarantool uses async replication by default, and it is possible to try selecting from a replica that does not have the space or the data yet, which can cause flaky tests
      now, we configure storage replicaset and enable sync replication for spaces to work with
      Closes #369
      b67a8100
  5. Mar 10, 2023
  6. Mar 09, 2023
    • Denis Smirnov's avatar
      fix: MR review · fbe57a71
      Denis Smirnov authored
      fbe57a71
    • Denis Smirnov's avatar
    • Denis Smirnov's avatar
      refactoring: insert redistribution · a216d170
      Denis Smirnov authored
      Previosly we had a very complicated logic for INSERT operator:
      we always generated a motion node under INSERT and generated
      bucket_id with a special motion command in this virtual table.
      As a side effect we made motions even for those INSERTs that was
      possible to execute locally.
      
      Another problem was caused by the column type derivation in
      INSERT .. VALUES .. expressions. If any column in the first row
      contained NULL it confuses Tarantool and it returns scalar (or
      even boolean!) type instead. And there is no projection type cast
      in Tarantool's insertion. As a result we often had type mismatch
      errors in INSERT .. VALUES .. queries.
      
      The solution is to rewrite this weird logic from the scratch.
      Now we rewrite the tree somehow like this:
      
      insert into t1 (a, b) values (1, 2)
      
      =>
      
      insert into t1 (a, b, bucket_id)
      select
        COL_1,
        COL_2,
        bucket_id(
          coalesce(cast(COL_2 as string), '')
          || coalesce(cast(COL_1 as string), '')
        )
      from (
        select
          cast(COLUMN_1 as integer) as COL_1,
          cast(COLUMN_2 as unsigned) as COL_2
        from (values (1, 2))
      )
      a216d170
    • ms.evilhat's avatar
      chore: actualize license · 09c2374b
      ms.evilhat authored
      09c2374b
    • Alexander Tolstoy's avatar
      docs: add railroad diagrams (eBNF) for Sbroad queries · 093ddb52
      Alexander Tolstoy authored and Denis Smirnov's avatar Denis Smirnov committed
      093ddb52
    • Alexander Tolstoy's avatar
      doc: update Readme docs · ca630799
      Alexander Tolstoy authored and Denis Smirnov's avatar Denis Smirnov committed
      ca630799
  7. Feb 28, 2023
  8. Feb 27, 2023
  9. Feb 20, 2023
  10. Feb 15, 2023
  11. Feb 14, 2023
  12. Feb 08, 2023
  13. Feb 07, 2023
    • ms.evilhat's avatar
      feat: add arithmetic expressions to projection · 38262373
      ms.evilhat authored
      we need to support arbitrary expressions consisting of logical, comparison and arithmetic operations and as sub-expression of aggregates. previously we added arithmetic exprs to selection ans join. this commit supports arithmetic (and only arithmetic) as a part of projection
      38262373
  14. Feb 03, 2023
  15. Feb 02, 2023
  16. Jan 31, 2023
  17. Jan 30, 2023
  18. Jan 25, 2023
    • Denis Smirnov's avatar
      fix: parameter binding · 87b26fe2
      Denis Smirnov authored
      
      We had a problem with the queries like:
      
      select * from t1 where (a, b) in (select c, d from ...)
      
      The root of the problem was that in a case of multiple references
      to the subquery ((a, b) in (ref_c_sq, ref_d_sq)) we tried to bind
      parameters multiple times that caused subtraction overflow and UB.
      As a fix we stop binding parameters more than once.
      
      Co-authored-by: default avatarms.evilhat <ms.evilhat@gmail.com>
      87b26fe2
Loading