Граф коммитов

201 Коммитов

Автор SHA1 Сообщение Дата
Manan Gupta ad802f0d11
feat: fix release script for v15 (#12285)
Signed-off-by: Manan Gupta <manan@planetscale.com>
2023-02-09 13:36:04 +05:30
vitess-bot[bot] 4ea0f52af1
[release-15.0] Update test runners to run all tests including outside package (#11787) (#11792)
* Update test runners to run all tests including outside package

Sometimes it's necessary to have a separate _test package inside another
package. Our current test runner doesn't run such tests though, leading
to tests being broken without us knowing.

Worst case it hides real bugs. So we should always ensure to also run
these tests as well.

Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>

* Fix tests

Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>

Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>
Co-authored-by: Dirkjan Bussink <d.bussink@gmail.com>
2022-11-28 17:00:30 +01:00
vitess-bot[bot] 20f5e8e82b
feat: add automation to change vitess version in the docker-release script (#11816)
Signed-off-by: Manan Gupta <manan@planetscale.com>

Signed-off-by: Manan Gupta <manan@planetscale.com>
Co-authored-by: Manan Gupta <manan@planetscale.com>
2022-11-28 11:37:14 +05:30
Rameez Sajwani 84db32ec03
add vtadmin folder to release package (#11683)
Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>
2022-11-22 07:24:15 +01:00
FlorentP 4a49da2c96
Fix the script `check_make_sizegen` (#11465)
* Fix check_make_sizegen

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>

* Apply review suggestion

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>

* Fail the static_check_etc workflow when a script fails

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>

* Remove test code

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-10-12 11:59:47 -07:00
Andrew Mason b389dc1a17
[tools/rowlog] Migrate to pflag (#11412)
* Pre-work tidying: tidy imports, remove commented out code

Signed-off-by: Andrew Mason <andrew@planetscale.com>

* [rowlog] Migrate to pflag, add flag for testing resumability

Closes #11408.

Signed-off-by: Andrew Mason <andrew@planetscale.com>

Signed-off-by: Andrew Mason <andrew@planetscale.com>
2022-10-01 11:10:44 +02:00
FlorentP cbd2eeb6ce
Fix build errors (#11209)
* fix build error

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>

* panic in case of error in the rowlog tool

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>

* Modify path to call client.go

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-09-19 11:57:16 +02:00
Florent Poinsard 1d3cf083e2
Unfreeze the branch when doing the release
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-09-09 18:29:33 +02:00
Florent Poinsard 5c5b06443e Merge remote-tracking branch 'origin/main' into flexible-release-commits
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-09-09 18:27:51 +02:00
Florent Poinsard d86dc4fdfd
Enforce the use of BASE_REMOTE and BASE_BRANCH
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-09-09 17:24:05 +02:00
Florent Poinsard b64fb6feb5
Use two different branches and two different commits to do the release
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-09-09 17:22:44 +02:00
Florent Poinsard a8457f1276
Addition of more verbose in the freeze script
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-09-09 15:42:36 +02:00
Florent Poinsard 33930b466f
Simple code freeze script and workflow
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-09-07 14:48:14 +02:00
FlorentP 3cdcb07109
Fix updateVitessExamples function call (#11134)
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-08-31 22:06:10 +02:00
FlorentP bc8240c387
Include the compose examples in the do_release script (#11130)
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-08-31 13:55:28 +02:00
Manan Gupta 1953a87ae6
Move goyacc to use pflags package (#11092)
* feat: move goyacc to use pflags package

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: add meaningfule names to flag values

Signed-off-by: Manan Gupta <manan@planetscale.com>

Signed-off-by: Manan Gupta <manan@planetscale.com>
2022-08-26 16:00:45 +05:30
Manan Gupta bbdcd581e7
Add upgrade-downgrade tests for next releases (#11033)
* ci: add upgrade test for new vtctl

Signed-off-by: Manan Gupta <manan@planetscale.com>

* ci: add upgrade test for new vttablet

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: fix vttablet upgrade-downgrade tests to not require the get_upgrade_downgrade_label step

Signed-off-by: Manan Gupta <manan@planetscale.com>

* ci: add tests for query serving for next release

Signed-off-by: Manan Gupta <manan@planetscale.com>

* ci: add tests for backups for next release

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: fix comment in next release script

Signed-off-by: Manan Gupta <manan@planetscale.com>

Signed-off-by: Manan Gupta <manan@planetscale.com>
2022-08-20 11:13:31 +05:30
Matt Lord 94861104f7
Run latest gofmt on everything & address linter warnings (#11008)
* Run latest gofmt on everything & address linter warnings

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Rebuild proto impls with new protoc

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Field name is needed for zk

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Make protos with 1.18.4

Signed-off-by: Matt Lord <mattalord@gmail.com>

Signed-off-by: Matt Lord <mattalord@gmail.com>
2022-08-16 13:53:42 -07:00
Matt Lord 644791026d
Add more robust go version handling (#11001) 2022-08-12 09:50:50 -04:00
Dirkjan Bussink a56442af5c
Cleanup usage of go.rice in favor of go:embed (#10956)
* Cleanup usage of go.rice in favor of go:embed

The usage of go.rice predates the availability of go:embed, but we
should switch to using go:embed instead to ship specific assets like
config files that we need.

go.rice is also incompatible with Go 1.19 and while it might see a fix
in the future, it seems better to go with the recommended Go approach
that is available these days.

Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>

* Move vtctld to also use `go embed` instead of go.rice

Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>

* Remove last rice-box related comments

Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>

* Remove config moving

This right now breaks building the actual tests since the tests might
also end up loading the regular code which has a `go embed` and refers
to the package with the config embeds.

This doesn't mean that the config isn't properly included in the
binaries. Also with using `go embed` we have a build time dependency on
the files and we always know the latest is included, so we don't have
the issue of potentially outdated files either.

All in all, it seems simplest to remove this logic and trust that Go
itself works as advertised.

Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>
2022-08-09 14:15:19 +05:30
Manan Gupta d87e713494
Fix VTop Example (#10687)
* feat: use the latest operator yaml file

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: add initial script for vtop example

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: add script to install kubectl and kind and add a github workflow

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: add code to verify vtadmin and vtorc are running correctly

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: add move tables and reshard part to the example

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: remove the inserted row in vtorc check so that move tables isn't affected

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: run the ci test outside docker and skip build since it is already done in a previous step

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: source build.env before running the test in ci

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: use custom image names in the test so as to not add image pull policies to the configuration

Signed-off-by: Manan Gupta <manan@planetscale.com>

* ci: remove setup steps that aren't used

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: use the common files instead of creating new ones

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: increase timeout of the ci

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: turned off semi-sync for the test

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: insertion should be retried since VTOrc might take a few seconds to fix it

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: remove the workflow file since it is too heavy

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: add double dashed flags and remove configuration for ci

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: fix readme for cluster example

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: copy init_db.sql file to 101 yaml

Signed-off-by: Manan Gupta <manan@planetscale.com>

* docs: fix comment in helper file

Signed-off-by: Manan Gupta <manan@planetscale.com>
2022-07-25 14:50:42 -07:00
Max Englander cf6346901b
test: for unit tests set TMPDIR=/tmp_XXXXXX on mac (#10655)
Some tests use t.TempDir to create temp dirs for storing per-test
files, such as MySQL configuration files and logs.

On Mac OS, this can generate long directory names, such as
/var/folders/96/k7gzd7q10zdb749vr02q7sjh0000gn/T/tmp.yqDFqOY3. If during
a test a mysqld socket is put in a long directory like that, mysql
client won't be able to connect to it, and the test will fail.

This commit modifies tools/unit_test_runner.sh so that on Mac OS, as
long as TMPDIR isn't already set, it will export
TMPDIR=/tmp/vttest_XXXXX (where XXXXXX is dynamically replaced with
random characters). Golang uses that as a base for further temporary
files and directories.

Signed-off-by: Max Englander <max@planetscale.com>
2022-07-08 19:16:13 -04:00
Matt Lord a1f1f12be8
Delete all legacy sharding related code (#10278)
* Delete all legacy sharding related code

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Move used until functions from initialsharding to cluster

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Remove vtctl commands

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Kill vtworker and SetKeyspaceServedFrom cmd

Signed-off-by: Matt Lord <mattalord@gmail.com>

* WaitForDrain related stragglers

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Legacy local straggler workflow

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Get rid of SetKeyspaceShardingInfo & wait for drain stragglers

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Remove vtworker stragglers

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Update throttlerservice protobuf

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Rename test 24, add hashicorp vault test to it (now mysql_server_vault)

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Remove last mentiones of legacy sharding in vtctl

Signed-off-by: Matt Lord <mattalord@gmail.com>

* remove binlog_use_v3_resharding_mode

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Address review comments

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Address review comments

Signed-off-by: Matt Lord <mattalord@gmail.com>

* Correct vtgate help output

Signed-off-by: Matt Lord <mattalord@gmail.com>
2022-07-07 13:52:32 -04:00
Dirkjan Bussink fa2f2c066d
Parse INTERVAL() function (#10599)
* Parser INTERVAL() function

This adds support for parsing the INTERVAL() function. It adds a single
shift / reduce conflict but the behavior there is what we want to match
the MySQL behavior as wel too.

Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>

* Add basic test

Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>
2022-06-29 12:29:57 +05:30
FlorentP 8cb37c7d87
Take into account `github.ref` when doing upgrade-downgrade tests (#10504)
* Take into account the github.ref variable when doing upgrade-downgrade tests

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>

* Changed upgrade-downgrade workflows' syntax to use 'previous' instead of 'latest'

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>

* Fixed syntax error in backup upgrade downgrade workflow

Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-06-15 12:56:13 -07:00
Manan Gupta 9f08615cb1
Reduce shift-reduce conflicts (#10500)
* feat: reduce shift-reduce conflicts by using the precedence symbol FUNCTION_CALL_NON_KEYWORD

Signed-off-by: Manan Gupta <manan@planetscale.com>

* feat: fix static check workflow to setup go in cases of parser changes too

Signed-off-by: Manan Gupta <manan@planetscale.com>
2022-06-14 18:58:09 +05:30
rsajwani fc4c09eee4
Refactor aggregation AST structs (#10347)
* SQLParser:Refactoring Add count struct

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* SQLParser:Refactoring Add countStar struct

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* SQLParser:Refactoring Add avg struct

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* SQLParser:Refactoring Add max struct

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* SQLParser:Refactoring Add min struct

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* SQLParser:Refactoring Add sum struct

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* SQLParser:Refactoring Fixing Parser Aggr Function

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* fix: the return type of count was wrong

Signed-off-by: Andres Taylor <andres@planetscale.com>

* Refacotring code

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* More refactoring and unit test cases fix

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* removing getarg from aggregate interface

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* Fixing bugs after merge

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* Optimizing code

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* Fixing planBuilder test cases`

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* Adding more aggregate functions

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* Fixing parser errors

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* fixing feedback , code review

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* Fix regression which making changes in previous commit

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* Fixing vdiff tests

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* Fixing replication test

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* Fixing vstreamer planbuilder test

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

* remove redundant code

Signed-off-by: Rameez Sajwani <rameezwazirali@hotmail.com>

Co-authored-by: Andres Taylor <andres@planetscale.com>
2022-06-13 13:01:26 -07:00
Andrew Mason dbfb9a49f7
[vtadmin] Add infrastructure for generating authz tests for vtadmin (#10397)
* Add infrastructure for generating authz tests for vtadmin

The lack of verifying authz checks are where they should be is one of the
most glaring issues in vtadmin (in my opinion; it's also my "fault" things
are this way). At the same time, writing all the code by hand to verify
every single endpoint would be a giant pain (which is the main reason
things are this way). So, let's codegen all the bits we don't care about!
The bonus here is that the config.json now can serve as authoritative on
what permissions are required for what endpoints.

The goal here is to have the config primarily specify the rules needed for
each endpoint, with as minimal "overhead" (currently specifying test cases
and mock data) as possible.

I want to separate the introduction of this setup from its complete
adoption, so I will submit a follow-up change that adds the rest of the
endpoint tests.

Signed-off-by: Andrew Mason <andrew@planetscale.com>

* add missing license headers

Signed-off-by: Andrew Mason <andrew@planetscale.com>

* Add make target and CI check

Signed-off-by: Andrew Mason <andrew@planetscale.com>
2022-06-02 06:19:55 -04:00
Rohit Nayak f6c3831e71
Check for vtadmin JS types drift in CI (#10256)
* Add vtadmin web proto check workflow/shell script.

Signed-off-by: Rohit Nayak <rohit@planetscale.com>

* Add generated files to change list check.

Signed-off-by: Rohit Nayak <rohit@planetscale.com>
2022-05-12 17:40:48 +02:00
Dirkjan Bussink 2809ca9eed
Fix parsing of encryption attribute for create database (#10249)
* Fix parsing of encryption attribute for create database

The create database statement also allows for an encryption value to be
set, so this fixes parsing support for that.

It also renames the `CharsetAndCollation` to `DatabaseOption` since
`CharsetAndCollationAndEncryption` seems overdoing things and
`DatabaseOption` more matches how we call this in other places, like a
`TableOption`.

Updates the test to parse unconditional with no magic comments so we
don't depend on the version and the comment logic is already tested
separately somewhere else, so I think it's better to not mix those here.

Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>

* Add comment for shift / reduce conflict and allow extra conflict

Signed-off-by: Dirkjan Bussink <d.bussink@gmail.com>
2022-05-11 09:19:01 +05:30
Matt Lord 1eba97aac4
Make go version check reliable by using double brackets (#10125)
For more complex integer operations in most modern shells you should
use double parens (shell uses let builtin) or double brackets (shell
uses test builtin) to ensure proper variable expansion and expression
execution (we explicitly use bash today in the build scripts).

In this case the lack of determinism and potential errors comes from
expansion of variables w/o a declared type (`declare -i number` or
`typeset -in`) or implicit type via e.g. `let foo=${bar}+0`. So if
we did not get a valid number from any of the regexp capture groups
(in my case I had go 1.18 installed so no patch version) then the
variable expansion can result in strings getting compared to numbers.
With the single brackets the go check does not work in this scenario
and we see this output from `make build`:
$ make build
Thu Apr 21 11:42:02 EDT 2022: Building source tree
./tools/shell_functions.inc: line 29: [: -lt: unary operator expected
./tools/shell_functions.inc: line 30: [: -gt: unary operator expected
./tools/shell_functions.inc: line 31: [: -lt: unary operator expected
./tools/shell_functions.inc: line 32: [: -gt: unary operator expected
./tools/shell_functions.inc: line 33: [: -lt: unary operator expected

The build will still complete but we do not enforce the go version as
intended. With this change we do (for example, in my case):
$ make build
Thu Apr 21 14:18:40 EDT 2022: Building source tree
ERROR: Go version reported: go version go1.18 darwin/arm64. Version 1.18.1+ required. See https://vitess.io/contributing/build-from-source for install instructions.
make: *** [build] Error 1

Signed-off-by: Matt Lord <mattalord@gmail.com>
2022-04-21 15:48:39 -04:00
FlorentP 9fc6d524ca Upgrade main to go1.18.1 (#10101)
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-04-15 17:36:11 -07:00
Manan Gupta eeb05bfb22
Reduce shift-reduce conflicts in the grammar by using Precedence (#10053)
* feat: add precedence rules to the grammar to reduce the number of conflicts

Signed-off-by: Manan Gupta <manan@planetscale.com>

* test: update the tool checker for make parser

Signed-off-by: Manan Gupta <manan@planetscale.com>
2022-04-07 20:42:50 +05:30
Kushal Kumar cc62452b4b
Add parsing support for Json schema validation functions (#9971)
* feat: add parsing support for JSON Schema Validation Functions

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* ci: fix number of expected conflicts

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* ci: update number of expected shift/reduce conflicts

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* tests: use ignoreNormalizer in the failing tests

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* test: add planner tests for search and validation functions

Signed-off-by: Manan Gupta <manan@planetscale.com>

* test: add end to end test for json search and validation functions

Signed-off-by: Manan Gupta <manan@planetscale.com>

* test: add tests for shorthands as well

Signed-off-by: Manan Gupta <manan@planetscale.com>

Co-authored-by: Manan Gupta <manan@planetscale.com>
2022-04-07 17:48:11 +05:30
Kushal Kumar d7cd8cc15b
Add parsing support for JSON Search Functions (#9990)
* feat: add parsing support for search functions

Add the structs, parsing, formatting and tests
JSON_SEARCH and value MEMBER OF not supported yet

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* feat: add parsing support for JSON_SEARCH()

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* feat: change JSONParamPath type from struct to Expr

update parser
update formatting

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* tests: add test for updated parser

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* tests: update invalid test case

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* refactor: remove commented code

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* ci: update number of expected shift/reduce conflicts

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* refactor: reorder words in ascending order

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* ci: fix number of expected shift/reduce conflicts

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* feat: add parsing support for MEMBER OF

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* refactor: use text_literal_or_arg in place of text_literal

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>
2022-04-05 19:06:08 +05:30
malpani 9b0e9735f2
Track full git sha1 string instead of the short version (#9970)
* Retain full git sha1 instead of the short version

Signed-off-by: Ankit Malpani <malpani@stripe.com>

* Update test to indicate full buildGitRev

Signed-off-by: Ankit Malpani <malpani@stripe.com>

Co-authored-by: Ankit Malpani <malpani@stripe.com>
2022-03-29 12:39:20 -07:00
Kushal Kumar 8ea4285898
Add parsing support for JSON value creators functions (#9880)
* feat: add parsing support for JSON value creators functions

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* refactor: use backticks in tests

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* feat: changed array to use pointers instead of structs

Signed-off-by: Manan Gupta <manan@planetscale.com>

* add the functions name in non reserved keywords

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* ci: fix number of expected conflicts

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* ci: fix number of expected shift/reduce conflicts

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* test: add planner and end to end tests for value creator functions

Signed-off-by: Manan Gupta <manan@planetscale.com>

Co-authored-by: Manan Gupta <manan@planetscale.com>
2022-03-29 19:23:00 +05:30
Kushal Kumar b93679f651
Add parsing support for JSON Utility Functions (#9850)
* feat: add parsing support for json utility functions

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* refactor:use backticks in test_cases and remove unused field in JSONUtility struct

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* tests: use backticks for strings

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* refactor: use separate structs for each utility function

Create separate structs and format function for each struct
Update parser to use corresponding structs
Remove previously used JSONUtilityExpr struct

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* ci: fix number of expected conflicts

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* test: add planner tests for the json utility functions

Signed-off-by: Manan Gupta <manan@planetscale.com>

Co-authored-by: Manan Gupta <manan@planetscale.com>
2022-03-24 11:08:37 +05:30
Vicent Marti af20621065 tools: rename interface{} to any in codegen
Signed-off-by: Vicent Marti <vmg@strn.cat>
2022-03-22 09:39:55 +01:00
Kushal Kumar 9b782f0859
Add parsing support for Trim grammar function (#9834)
* feat: add parsing support for LTRIM()

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* feat: add parsing support for RTRIM()

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* fix: conflict error - LTRIM and RTRIM

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* feat: add parsing support(partial) for TRIM()

Parse expressions

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* feat: improve parsing support for TRIM()

Support expression FROM expression parsing
Add tests

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* feat: improve parsing support for TRIM()

Add parsing trim types

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* feat: complete parsing support for TRIM()

Use TrimFuncExpr as generic FuncExpr for LTRIM,RTRIM,TRIM using TrimFuncType
Add tests

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* test: added test case for planner

Signed-off-by: Manan Gupta <manan@planetscale.com>

* ci: fix number of conflicts expectation

Signed-off-by: Manan Gupta <manan@planetscale.com>

* fix: drop _opt in trim_type_opt

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* tests: update tests in select_cases.txt

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* test: update tests in vttablet/../exec_cases.txt

Signed-off-by: Kushal Kumar <kushalkumargupta4@gmail.com>

* test: fix keywords test to reflect trailing being a reserved keyword

Signed-off-by: Manan Gupta <manan@planetscale.com>

Co-authored-by: Manan Gupta <manan@planetscale.com>
2022-03-10 17:18:20 +05:30
FlorentP 5ad5925f28
Merge pull request #9745 from planetscale/improve-upgrade-downgrade-strategy
Improve upgrade downgrade workflows' strategy
2022-02-23 12:21:09 +01:00
Manan Gupta 6f8b63fb12 feat: add v to tags
Signed-off-by: Manan Gupta <manan@planetscale.com>
2022-02-23 12:27:20 +05:30
Manan Gupta c8766b36e9 feat: enforce shellcheck rules
Signed-off-by: Manan Gupta <manan@planetscale.com>
2022-02-23 11:53:45 +05:30
Manan Gupta d00992fa4c feat: use the latest tag for comparison against main and use the release brach if no tag exists for the latest release branch
Signed-off-by: Manan Gupta <manan@planetscale.com>
2022-02-23 11:51:51 +05:30
Manan Gupta bff7334143 feat: use the latest major release patch to run upgrade tests for release branches
Signed-off-by: Manan Gupta <manan@planetscale.com>
2022-02-23 11:44:37 +05:30
Florent Poinsard 925fde5c4f
Use latest vtop example CRDs and fix do_release script for vtop
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-02-21 16:07:07 +01:00
Florent Poinsard 10d5a531aa
chore: applied shellcheck suggestions on get_latest_release.sh
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-02-21 09:05:39 +01:00
Florent Poinsard fa4df24dd1 test: get latest release from origin instead of heads
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-02-21 09:00:38 +01:00
Florent Poinsard aedd6fcfe5 test: of new get_latest_release script in query serving upgrade/downgrade build
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-02-21 08:36:43 +01:00
FlorentP 159f05d912
Merge pull request #9621 from planetscale/fix-release-automation
Fix output issue in the do_release script
2022-02-20 19:00:08 +01:00