Commit Graph

418 Commits

Author SHA1 Message Date
Ariel Mashraki
99a9d6cf9b dialect/sql: introduce lock config options 2021-07-08 16:41:01 +03:00
bshihr
4066255641 dialect/sql/schema: add IndexBuilder.IfNotExists and use for Create() case. (#1666)
Append-only mode creates tables with the `IF NOT EXISTS` annotation.
Make indices case symmetric with this.
2021-06-30 09:09:48 +03:00
Ariel Mashraki
7ffdce4cef sql/schema: support custom char type for field.Other
Fixed #1664
2021-06-29 16:31:57 +03:00
Ariel Mashraki
c40ae45aee entc/gen: add support for summing custom Go numeric types 2021-06-25 17:30:17 +03:00
Ariel Mashraki
1d661deb50 dialect/sql/schema: add mysql tests for checks annotation 2021-06-18 10:30:07 +03:00
Ariel Mashraki
42a2c67cc4 dialect/entsql: add support for table checks in schema/migration 2021-06-17 23:22:37 +03:00
Ariel Mashraki
b8f4614bfd dialect/sql: allow adding check clauses in create table 2021-06-17 22:30:15 +03:00
Ariel Mashraki
66871c9806 dialect/sql/schema: add support for index prefixes in mysql 2021-06-09 22:52:31 +03:00
Ariel Mashraki
7428167a14 dialect/sql/schema: add testcase for unsigned decimal types (#1628) 2021-06-08 11:22:55 +03:00
WzyJerry
bbe54ede4e dialect/sql/sqljson: query in array of objects with Postgres backend #1594 (#1621) 2021-06-03 08:56:58 +03:00
Ariel Mashraki
f5c284787f dialect/sql: allow appending select columns to query 2021-06-01 11:50:16 +03:00
Ariel Mashraki
69c4e2387e dialect/sql: add (not)exists predicate for builder 2021-05-27 21:56:56 +03:00
Ariel Mashraki
961dc08d14 examples/fs: add example for recursive traversals (#1599) 2021-05-25 20:45:37 +03:00
Ariel Mashraki
02452aad89 dialect/sql: add option to prefix select queries (#1598) 2021-05-25 18:38:06 +03:00
Ariel Mashraki
5d3cc575b3 dialect/sql: add union and with-recursive api for builder (#1595) 2021-05-25 18:27:32 +03:00
Ariel Mashraki
b46a6f0d69 dialect/sql/sqlgraph: prefix entql idents with table/select name (#1592) 2021-05-23 18:12:16 +03:00
Benjamin Bourgeais
d114942589 dialect/sql: improve equalfold implementation (#1572) 2021-05-19 22:30:50 +03:00
Ariel Mashraki
f7db15ccbb dialect/sql/schema: add field collation support for postgres 2021-05-10 20:32:45 +03:00
Mahmudul Haque
ba954ebeec dialect/sql/schema: add field collation support (#1548)
* specific field collation support

* go generate ./...
2021-05-09 18:09:08 +03:00
Ariel Mashraki
37d4b9e2cb dialect/sql/schema: do not set timestamp to nullable columns on MySQLv8.* (#1547)
Fixed #1541
2021-05-08 21:29:35 +03:00
陈杨文
be59ad6d3f dialect.sql/schema.Column ScanDefault allowed uuid default to function (#1537) 2021-05-07 16:15:29 +03:00
陈杨文
6d3df1469c dialect/sql: include nested builder errors on join (#1533)
* sql.Builder Join include Querier's error

* sql.Builder Join ignore nil error

Co-authored-by: Ariel Mashraki <7413593+a8m@users.noreply.github.com>

Co-authored-by: Ariel Mashraki <7413593+a8m@users.noreply.github.com>
2021-05-05 17:09:55 +03:00
AlonDavidBehr
110bfd97ca dialect/sql/schema: fixed spelling mistakes in schema.go (#1532) 2021-05-03 21:02:52 +03:00
Ariel Mashraki
efd225822c dialect/sql: add driver.Valuer to ParamFormatter example 2021-05-03 14:10:02 +03:00
Ariel Mashraki
edf473e043 dialect/sql: correct alias names for multiple join tables 2021-04-29 23:05:28 +03:00
Ciaran Liedeman
b20d521593 dialect/sql/schema: added foreign keys to postgres inspect (#1493)
* Added foreign keys to postgres inspect

* Update dialect/sql/schema/inspect.go

Co-authored-by: Ariel Mashraki <7413593+a8m@users.noreply.github.com>

* Update dialect/sql/schema/inspect.go

Co-authored-by: Ariel Mashraki <7413593+a8m@users.noreply.github.com>

* added unit test

* fixed interface

* moved import back

* fixing tests

* Update dialect/sql/schema/inspect.go

Co-authored-by: Ariel Mashraki <7413593+a8m@users.noreply.github.com>

* Update dialect/sql/schema/postgres.go

Co-authored-by: Ariel Mashraki <7413593+a8m@users.noreply.github.com>

* Update dialect/sql/schema/postgres.go

Co-authored-by: Ariel Mashraki <7413593+a8m@users.noreply.github.com>

* pr feedback

* added m2m test case

* converted to unit tests

Co-authored-by: Ariel Mashraki <7413593+a8m@users.noreply.github.com>
2021-04-26 15:32:12 +03:00
Ariel Mashraki
1908b3e35f dialect/sql/sqlbuild: replace bytes.buffer with strings.builder (#1502)
benchmark                                      old ns/op     new ns/op     delta
BenchmarkInsertBuilder_Default/sqlite3-16      285           253           -11.06%
BenchmarkInsertBuilder_Default/mysql-16        283           219           -22.70%
BenchmarkInsertBuilder_Default/postgres-16     374           340           -9.17%
BenchmarkInsertBuilder_Small/sqlite3-16        1945          1734          -10.85%
BenchmarkInsertBuilder_Small/mysql-16          1957          1741          -11.04%
BenchmarkInsertBuilder_Small/postgres-16       2393          2220          -7.23%

benchmark                                      old allocs     new allocs     delta
BenchmarkInsertBuilder_Default/sqlite3-16      5              6              +20.00%
BenchmarkInsertBuilder_Default/mysql-16        5              5              +0.00%
BenchmarkInsertBuilder_Default/postgres-16     6              7              +16.67%
BenchmarkInsertBuilder_Small/sqlite3-16        22             23             +4.55%
BenchmarkInsertBuilder_Small/mysql-16          22             23             +4.55%
BenchmarkInsertBuilder_Small/postgres-16       31             32             +3.23%

benchmark                                      old bytes     new bytes     delta
BenchmarkInsertBuilder_Default/sqlite3-16      456           168           -63.16%
BenchmarkInsertBuilder_Default/mysql-16        440           104           -76.36%
BenchmarkInsertBuilder_Default/postgres-16     480           176           -63.33%
BenchmarkInsertBuilder_Small/sqlite3-16        1624          1176          -27.59%
BenchmarkInsertBuilder_Small/mysql-16          1624          1176          -27.59%
BenchmarkInsertBuilder_Small/postgres-16       1656          1192          -28.02%
2021-04-23 11:10:33 +03:00
Vojtěch Káně
43ef74b8a8 entc/gen: add support for default annotation to PKs as well (#1492) 2021-04-22 14:16:53 +03:00
Ariel Mashraki
89d1bcd80c dialect/sql/sqlscan: allow scanning optional values to non-pointer fields 2021-04-20 09:29:41 +03:00
Ariel Mashraki
b3041725d2 dialect/sql/sqlscan: allow scanning values to embedded struct fields 2021-04-19 18:40:37 +03:00
Ariel Mashraki
497fca4c96 entc/gen: skip selecting group-by fields if they already selected 2021-04-19 17:20:44 +03:00
Christoph Hartmann
5421d6c628 dialect/sql/schema: handle pg bytea for schema changes (#1462) 2021-04-19 14:46:01 +03:00
Ariel Mashraki
2480b5c0ef entc/gen: wrap nillable fields with custom go-type with sql.nullscanner 2021-04-17 13:13:40 +03:00
Ariel Mashraki
712b6a5f08 dialect/sql/sqlgraph: allow update single node without select 2021-04-14 21:54:27 +03:00
Ariel Mashraki
5bcee6b51c dialect/sql/schema: add postgres tests for array type 2021-04-14 14:25:28 +03:00
Ariel Mashraki
fd1f2df150 dialect/sql/schema: add support for pg arrays in migration 2021-04-14 14:25:28 +03:00
bshihr
d7b683c0d3 dialect/sql/schema: correct wrong error message ("mysql" hard coded in Inspector method) (#1442) 2021-04-09 07:40:31 +03:00
Ariel Mashraki
745afde770 dialect/entsql: add support for column default using annotation
Fixed #1033
2021-04-03 21:53:56 +03:00
Ariel Mashraki
a1ad70c685 dialect/sql/schema: json column migration for mariadb10.3.13
See https://github.com/ent/ent/issues/1395\#issuecomment-809420881
Fixed #1395
2021-03-29 22:34:58 +03:00
Ariel Mashraki
f12ef91829 entc/gen: privatize table columns check 2021-03-29 14:35:38 +03:00
Ariel Mashraki
305edd00e0 dialect/sql/schema: handle index prefix key limit in older versions of mariadb
Fixed #1378
2021-03-23 17:01:38 +02:00
Ariel Mashraki
56a0cf1e8b dialect/sql/sqlgraph: fix incorrect arg-list handling in entql
Fixed #1376
2021-03-22 20:27:12 +02:00
Ariel Mashraki
a3c536402a dialect/sql: add missing godoc comments (#1372) 2021-03-22 18:45:50 +02:00
Ivan Vanderbyl
afa3beca6b dialect/sql: add on-conflict handling to sql builder (#1370)
* Adds conflict handling to sql builder

* Revert some builder tests

* Fix builder test

* Revert

* Revert another line

* Update dialect/sql/builder.go

* Move conflict ops

* Refactor conflict handling builder

Co-authored-by: Ivan Vanderbyl <ivanvanderbyl@gmail.com>
Co-authored-by: Ivan Vanderbyl <ivanvanderbyl@users.noreply.github.com>
2021-03-22 12:36:43 +02:00
Ruben de Vries
68a6bd7fcd dialect/sql: add helpers for basic predicates for comparing 2 columns. (#1358) 2021-03-22 11:42:12 +02:00
Ariel Mashraki
b4ad29f7f3 dialect/sql/schema: fix postgres index migration (#1351)
Fix PostgreSQL index migration when table_name = type_name.
Closed #1344
2021-03-18 22:29:39 +02:00
Ariel Mashraki
14ed353ca9 dialect/sql: minor improvements to sql builder (#1343)
benchmark                                     old ns/op     new ns/op     delta
BenchmarkInsertBuilder_Default/default-16     6210          922           -85.15%

benchmark                                     old allocs     new allocs     delta
BenchmarkInsertBuilder_Default/default-16     86             16             -81.40%

benchmark                                     old bytes     new bytes     delta
BenchmarkInsertBuilder_Default/default-16     4098          1088          -73.45%
2021-03-17 14:36:09 +02:00
Rotem Tamir
36e3492718 dialect/sql/sqlgraph: adding unit tests for IsConstraintError (#1318)
* dialect/sql/sqlgraph: adding unit tests for IsConstraintError group of checks in second phase of #1310

* renaming test for loop variable names

* use backtick strings to improve readability
2021-03-10 18:23:24 +02:00
Rotem Tamir
2a17dba983 dialect/sql/sqlgraph: add constraint error checks (#1316)
Initial work on #1310
2021-03-09 15:56:47 +02:00
Matthew Gabeler-Lee
c53b45ddb0 all: use %w instead of %v to wrap errors (#1275)
* all: use %w instead of %v for nested errors with fmt.Errorf

* all: update generated code to use %w instead of %v for error wrapping
2021-03-03 20:05:33 +02:00