From bdd8f2f624228ea3ff2e53f7f6114e1d7cbdda84 Mon Sep 17 00:00:00 2001 From: Marwan Sulaiman Date: Sun, 24 Jan 2021 08:15:23 -0500 Subject: [PATCH] Ensure SchemaConfig is set in sqlQuery's context (#1203) --- entc/gen/internal/bindata.go | 4 ++-- .../dialect/sql/feature/schemaconfig.tmpl | 2 ++ entc/integration/multischema/ent/group_query.go | 2 ++ entc/integration/multischema/ent/pet_query.go | 2 ++ entc/integration/multischema/ent/user_query.go | 2 ++ entc/integration/multischema/multischema_test.go | 15 ++++++++++----- 6 files changed, 20 insertions(+), 7 deletions(-) diff --git a/entc/gen/internal/bindata.go b/entc/gen/internal/bindata.go index 598a1e9fe..f606753d4 100644 --- a/entc/gen/internal/bindata.go +++ b/entc/gen/internal/bindata.go @@ -731,7 +731,7 @@ func templateDialectSqlErrorsTmpl() (*asset, error) { return a, nil } -var _templateDialectSqlFeatureSchemaconfigTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xe4\x58\x5d\x6b\x22\x49\x17\xbe\xb6\x7f\xc5\xa1\x11\x5e\x1d\x62\x39\x33\x77\x6f\x20\x0b\xd9\x90\x40\x98\x9d\xcc\xb2\x19\x76\x2f\x87\x4a\xd5\x51\x8b\xb4\x55\x3d\x55\xc7\x24\x22\xfd\xdf\x97\xfa\x68\xed\x56\xdb\x24\x12\xb2\x0b\x7b\xa7\xd6\xa9\xf3\xf1\x9c\xaf\xa7\x5c\xad\xc6\x1f\xb2\x0b\x53\x2e\xad\x9a\xce\x08\x3e\x7f\xfc\xf4\xff\x51\x69\xd1\xa1\x26\xb8\xe2\x02\xef\x8c\xb9\x87\x6b\x2d\x18\x9c\x17\x05\x04\x21\x07\xfe\xdc\x3e\xa0\x64\xd9\xf7\x99\x72\xe0\xcc\xc2\x0a\x04\x61\x24\x82\x72\x50\x28\x81\xda\xa1\x84\x85\x96\x68\x81\x66\x08\xe7\x25\x17\x33\x84\xcf\xec\x63\x7d\x0a\x13\xb3\xd0\x32\x53\x3a\x9c\xff\x76\x7d\x71\x79\x73\x7b\x09\x13\x55\x20\xa4\xdf\xac\x31\x04\x52\x59\x14\x64\xec\x12\xcc\x04\xa8\x61\x8c\x2c\x22\xcb\x3e\x8c\xab\x2a\xcb\x56\xab\x11\x48\x9c\x28\x8d\x90\x4b\xc5\x0b\x14\x34\x76\x3f\x8b\xb1\xd2\x84\x56\xf3\x62\xec\xc4\x0c\xe7\x5c\x18\x3d\x51\xd3\x1c\x46\x55\x95\xad\x56\xf0\xa8\x68\x06\xf8\x44\xa8\x25\xf4\x21\xff\x9d\x8b\x7b\x3e\xc5\x1c\xf2\xfa\x5a\x94\xec\xad\x56\x40\x38\x2f\x0b\x4e\x08\xf9\x0c\xb9\x44\x9b\x03\x83\xa8\xc4\x5f\xae\xaa\x4c\xcd\x4b\x63\x09\x72\x61\x34\xe1\x13\xe5\x59\x36\x1e\xc3\x6d\xb0\x7a\x11\xac\x82\xc5\x84\xaa\x03\x5e\x04\xfd\xa4\x1e\x10\xa2\x67\xa0\xf9\x1c\x1d\x4c\x8c\x05\x5e\x14\x40\xfc\xae\x40\xe7\x55\xd0\x8c\x13\x08\xae\xe1\x0e\xa1\xe4\xce\x83\xca\x09\xec\x42\x93\x9a\x23\xcb\x68\x59\x62\xdb\x8c\x23\xbb\x10\x04\x2b\xef\xf6\x08\x2c\xd7\x53\x84\xbe\x86\xd3\x33\xe8\xb3\x1b\x23\xd1\x79\x6f\x7b\x3e\xa6\xbe\x66\x37\x7c\x8e\x50\x55\xfe\x92\xd2\x53\x18\x8f\xa1\xfd\x7b\xf0\x83\x05\xf1\xb5\x2e\x0c\xba\x34\xbb\x94\xd3\x5a\x59\x38\x56\x13\xe0\x1e\x48\x64\x5f\x3f\x7f\x85\x81\x36\xe4\x3f\x5f\xeb\x07\xb4\x0e\x87\x49\xb0\x6d\xd7\x7f\x41\x76\x1b\x3c\xbe\x52\x58\xc8\x03\xbe\x8c\xa2\x70\xfd\xed\x97\xf8\xf5\xfb\xb2\xc4\x5d\x6f\x83\x3f\x29\x31\xed\x2f\x8d\xcf\x55\x16\xd1\x8b\x09\xb8\xa0\xa7\x2f\xb8\x4c\xe8\xad\xaa\x9d\xf4\x5d\x59\x33\xbf\x88\xb9\x05\x8b\xb4\xb0\xda\x01\xdf\x46\xde\x58\x94\xa0\xb4\x53\x12\x81\x43\x2a\x85\x13\x30\x16\x70\x5e\xd2\xd2\x43\x44\x33\xb4\xbe\x47\xf4\xff\x08\x8c\x46\x96\x4d\x16\x5a\x74\x59\x1a\x08\x7a\xaa\xd5\xb0\xf4\xdb\xb0\x6d\x74\x95\xf5\x62\x55\x9f\xc0\x0f\x9f\x18\x41\x4f\xec\x4f\x5e\x2c\x70\xd0\x8c\x6b\x55\x0d\xd9\xa0\x79\x6f\x98\xf5\x62\x14\x10\x6f\x67\x31\xe2\x1b\x7c\x6c\x4a\xed\x06\xac\xf1\xb1\x76\x28\xb6\x8f\xef\xd3\xa9\x7a\x40\xdd\x76\x8b\x13\xf9\x7e\x97\x29\xbe\xfd\x7a\x07\x25\xb7\x7e\xca\x6c\x45\x78\x92\x7c\x6a\x69\x1c\x6e\x4b\xf9\xc8\x37\x21\x84\x93\xbf\x14\xcd\x62\xec\x51\xf1\x09\xb4\x31\xa8\x15\x0f\xb3\x34\x32\x52\x25\x64\x7e\x04\xc2\xb9\x94\xa4\x8c\xe6\x05\xc4\x5e\x76\x70\xb7\x0c\xe1\x35\x67\x07\x4c\x90\xd3\xc2\x22\x83\x30\x78\x3a\xe7\x4e\xd0\x30\xe6\x52\xaa\xa8\x73\xcf\x00\xaa\x9b\xa6\xcf\xae\xa2\xce\x4b\xed\xeb\x57\x42\xee\x35\xb4\xe5\x43\x1d\xe7\xbe\xe4\x59\x84\x83\xa5\x61\x05\x55\xb5\x1e\x72\x79\xab\xbc\x0f\xc4\x37\xf1\xad\xe6\x80\x4c\x08\x4f\x34\xe7\xc6\x33\x71\x45\xd9\x71\x54\xf0\x16\x31\xb9\x66\xd1\x34\xf3\xbd\x37\x96\xd1\x9e\x60\xc8\x94\xa3\x02\x1f\xb0\x88\xdb\xc7\x4f\xd0\x50\x93\xa8\xd1\x72\x42\x99\xe2\x63\x53\x13\x76\xcb\xcb\x02\x34\xa5\xd7\xbe\x1d\xe1\x31\x01\xbe\xc1\x16\x08\x4a\x9e\xd9\x03\xbd\xde\xee\x26\x38\x83\xba\x32\x58\x0b\xd9\xa8\xf0\x3c\x59\xc7\x78\xe6\xdd\x29\xcc\xe3\xc6\xab\x2d\x9f\xc8\xc0\x1d\xc6\x9b\xc9\xbc\xd2\x64\xc0\xb7\xaf\x29\x3d\xd2\x1e\x2f\xef\x47\xe8\xf7\x2d\xe5\x83\xce\x34\x0f\xe1\x5b\x80\xda\x77\x73\xaf\xee\x67\xaf\x62\x20\xe0\x43\xea\xd6\x78\xd6\x13\xcc\xb5\xa3\x73\xad\x72\xe9\xf5\x3c\xdc\xd5\x81\x1e\xd8\x9f\x71\x89\x05\x12\x8e\x5d\x89\xa2\x23\xdd\x9b\xdd\xdf\xbc\xb7\xe7\x42\xff\xa5\x36\x17\xa5\xe4\xef\x6d\x53\x58\x7c\xc6\xe6\x16\x1d\xba\x96\xa8\x29\x87\xfc\x87\xbf\x92\x43\x7e\x7b\xaf\xca\x34\x7b\x73\x20\xbb\xc0\xcd\x76\x7d\xb1\xb7\x6c\x7b\x09\xbf\xc4\xf3\x9f\x0b\xb4\xcb\x37\x01\x8b\xbd\xce\x24\xf2\x29\xda\xc2\x70\xa9\xf4\xf4\x58\xe0\x02\x4d\xca\x9f\x83\x4a\xe2\x04\xe5\x74\x6f\x76\x8e\x82\xec\x80\xbe\x5a\x5b\xe2\x71\xec\x56\x98\x12\x83\x97\x9b\xa3\xbb\x85\x2a\x3c\x71\x3f\x3d\xf3\xcd\x2e\x78\xb1\x96\xfb\x35\x9d\xac\x45\x2d\x0a\x54\x0f\x51\x76\xfd\x79\xad\x60\x2d\xa6\x3c\x26\x5e\x26\xc7\x84\x47\xcd\xbf\x6b\xcd\x01\xb5\xc4\x09\xa3\xf4\x59\x88\x7d\x43\xb1\x5f\x3d\x7b\x83\xe5\x34\xc5\x7c\xac\x6d\xba\x98\xad\x69\x6b\x1f\xd9\xb7\x47\x7d\xf5\xa5\x41\x66\xeb\x6b\x81\x35\xb7\xe4\xb1\x70\x98\x2e\x79\x9e\xdb\xe2\xbf\x1b\xbe\xbb\xa1\xbb\x4d\x5d\xa5\x55\x9a\xda\x7e\x0c\x6a\x80\x77\xa8\xf2\xda\xd8\x21\x55\x51\xc9\x0e\x89\x3e\xc8\x81\x7b\x1b\x88\xab\x2a\xad\x06\x38\x0b\x6c\x7b\x9d\xc1\xaa\x6a\x4d\x5b\xe6\x0f\x93\xed\x23\xca\x71\x4f\x19\x8e\xde\xa5\xd8\x62\x0b\xfa\x67\xcf\xbb\x95\xdc\x51\xd0\xee\xd6\x64\x78\x3e\x25\x3f\x1b\x93\x37\xe5\xd6\xbf\x0b\x1a\xeb\xbd\x83\x5e\x0b\x7a\x3a\x39\x68\x7b\xd8\xfd\x3a\xda\xa2\x5c\x07\x27\x33\x16\xe1\x85\xfe\x7e\x19\x7e\x4d\x46\xe8\x53\xca\xc3\xe0\xc5\x59\x18\x1e\x8b\x44\xc9\x69\xf6\x06\x9c\xb1\xc5\x73\x4e\x63\xf9\x24\xc0\xfe\xe8\xf0\xff\xe0\x76\x49\x69\x22\x2c\x0f\xee\x96\xd1\xeb\x82\x9d\x58\x33\xff\x0f\x04\x5b\x5a\x94\x4a\x78\xea\x14\x36\xea\x8c\x77\xbe\x7b\xf6\xfb\xb3\x75\xff\x00\x21\x79\xa5\x1b\x7e\x94\xfd\x1b\x5c\x79\xeb\x57\xe0\x69\xc7\xbb\xa5\xf9\xbf\x88\xab\xff\x05\x18\x0c\x87\xff\x40\xe9\xef\xd1\x37\x7a\x86\x57\xf9\x2b\xec\xbb\xd9\xec\x84\x9d\xe9\xb3\xcd\x4e\x9e\x63\x2f\x7b\xc9\x4b\x27\x77\xe9\xa2\x2e\x5d\xcc\xe5\x78\xe2\xb2\xc5\x5b\x5e\x49\x5b\x3a\xd6\x51\xc4\xcf\xa3\x79\x00\xc1\x0d\x41\x69\xe4\xf2\xef\x00\x00\x00\xff\xff\x9c\x65\x1d\x4c\xdf\x16\x00\x00") +var _templateDialectSqlFeatureSchemaconfigTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xe4\x58\x5d\x6b\x22\x49\x17\xbe\xb6\x7f\xc5\xa1\x11\x5e\x1d\x62\x39\x33\x77\x6f\x20\x0b\xd9\x90\x40\x98\x9d\xcc\xb2\x19\x76\x2f\x87\x4a\xd5\x51\x8b\xb4\x55\x3d\x55\xc7\x24\x22\xfd\xdf\x97\xfa\x68\xed\x56\xdb\x24\x12\xb2\x0b\x7b\xa7\xd6\xa9\xf3\xf1\x9c\xaf\xa7\x5c\xad\xc6\x1f\xb2\x0b\x53\x2e\xad\x9a\xce\x08\x3e\x7f\xfc\xf4\xff\x51\x69\xd1\xa1\x26\xb8\xe2\x02\xef\x8c\xb9\x87\x6b\x2d\x18\x9c\x17\x05\x04\x21\x07\xfe\xdc\x3e\xa0\x64\xd9\xf7\x99\x72\xe0\xcc\xc2\x0a\x04\x61\x24\x82\x72\x50\x28\x81\xda\xa1\x84\x85\x96\x68\x81\x66\x08\xe7\x25\x17\x33\x84\xcf\xec\x63\x7d\x0a\x13\xb3\xd0\x32\x53\x3a\x9c\xff\x76\x7d\x71\x79\x73\x7b\x09\x13\x55\x20\xa4\xdf\xac\x31\x04\x52\x59\x14\x64\xec\x12\xcc\x04\xa8\x61\x8c\x2c\x22\xcb\x3e\x8c\xab\x2a\xcb\x56\xab\x11\x48\x9c\x28\x8d\x90\x4b\xc5\x0b\x14\x34\x76\x3f\x8b\xb1\xd2\x84\x56\xf3\x62\xec\xc4\x0c\xe7\x5c\x18\x3d\x51\xd3\x1c\x46\x55\x95\xad\x56\xf0\xa8\x68\x06\xf8\x44\xa8\x25\xf4\x21\xff\x9d\x8b\x7b\x3e\xc5\x1c\xf2\xfa\x5a\x94\xec\xad\x56\x40\x38\x2f\x0b\x4e\x08\xf9\x0c\xb9\x44\x9b\x03\x83\xa8\xc4\x5f\xae\xaa\x4c\xcd\x4b\x63\x09\x72\x61\x34\xe1\x13\xe5\x59\x36\x1e\xc3\x6d\xb0\x7a\x11\xac\x82\xc5\x84\xaa\x03\x5e\x04\xfd\xa4\x1e\x10\xa2\x67\xa0\xf9\x1c\x1d\x4c\x8c\x05\x5e\x14\x40\xfc\xae\x40\xe7\x55\xd0\x8c\x13\x08\xae\xe1\x0e\xa1\xe4\xce\x83\xca\x09\xec\x42\x93\x9a\x23\xcb\x68\x59\x62\xdb\x8c\x23\xbb\x10\x04\x2b\xef\xf6\x08\x2c\xd7\x53\x84\xbe\x86\xd3\x33\xe8\xb3\x1b\x23\xd1\x79\x6f\x7b\x3e\xa6\xbe\x66\x37\x7c\x8e\x50\x55\xfe\x92\xd2\x53\x18\x8f\xa1\xfd\x7b\xf0\x83\x05\xf1\xb5\x2e\x0c\xba\x34\xbb\x94\xd3\x5a\x59\x38\x56\x13\xe0\x1e\x48\x64\x5f\x3f\x7f\x85\x81\x36\xe4\x3f\x5f\xeb\x07\xb4\x0e\x87\x49\xb0\x6d\xd7\x7f\x41\x76\x1b\x3c\xbe\x52\x58\xc8\x03\xbe\x8c\xa2\x70\xfd\xed\x97\xf8\xf5\xfb\xb2\xc4\x5d\x6f\x83\x3f\x29\x31\xed\x2f\x8d\xcf\x55\x16\xd1\x8b\x09\xb8\xa0\xa7\x2f\xb8\x4c\xe8\xad\xaa\x9d\xf4\x5d\x59\x33\xbf\x88\xb9\x05\x8b\xb4\xb0\xda\x01\xdf\x46\xde\x58\x94\xa0\xb4\x53\x12\x81\x43\x2a\x85\x13\x30\x16\x70\x5e\xd2\xd2\x43\x44\x33\xb4\xbe\x47\xf4\xff\x08\x8c\x46\x96\x4d\x16\x5a\x74\x59\x1a\x08\x7a\xaa\xd5\xb0\xf4\xdb\xb0\x6d\x74\x95\xf5\x62\x55\x9f\xc0\x0f\x9f\x18\x41\x4f\xec\x4f\x5e\x2c\x70\xd0\x8c\x6b\x55\x0d\xd9\xa0\x79\x6f\x98\xf5\x62\x14\x10\x6f\x67\x31\xe2\x1b\x7c\x6c\x4a\xed\x06\xac\xf1\xb1\x76\x28\xb6\x8f\xef\xd3\xa9\x7a\x40\xdd\x76\x8b\x13\xf9\x7e\x97\x29\xbe\xfd\x7a\x07\x25\xb7\x7e\xca\x6c\x45\x78\x92\x7c\x6a\x69\x1c\x6e\x4b\xf9\xc8\x37\x21\x84\x93\xbf\x14\xcd\x62\xec\x51\xf1\x09\xb4\x31\xa8\x15\x0f\xb3\x34\x32\x52\x25\x64\x7e\x04\xc2\xb9\x94\xa4\x8c\xe6\x05\xc4\x5e\x76\x70\xb7\x0c\xe1\x35\x67\x07\x4c\x90\xd3\xc2\x22\x83\x30\x78\x3a\xe7\x4e\xd0\x30\xe6\x52\xaa\xa8\x73\xcf\x00\xaa\x9b\xa6\xcf\xae\xa2\xce\x4b\xed\xeb\x57\x42\xee\x35\xb4\xe5\x43\x1d\xe7\xbe\xe4\x59\x84\x83\xa5\x61\x05\x55\xb5\x1e\x72\x79\xab\xbc\x0f\xc4\x37\xf1\xad\xe6\x80\x4c\x08\x4f\x34\xe7\xc6\x33\x71\x45\xd9\x71\x54\xf0\x16\x31\xb9\x66\xd1\x34\xf3\xbd\x37\x96\xd1\x9e\x60\xc8\x94\xa3\x02\x1f\xb0\x88\xdb\xc7\x4f\xd0\x50\x93\xa8\xd1\x72\x42\x99\xe2\x63\x53\x13\x76\xcb\xcb\x02\x34\xa5\xd7\xbe\x1d\xe1\x31\x01\xbe\xc1\x16\x08\x4a\x9e\xd9\x03\xbd\xde\xee\x26\x38\x83\xba\x32\x58\x0b\xd9\xa8\xf0\x3c\x59\xc7\x78\xe6\xdd\x29\xcc\xe3\xc6\xab\x2d\x9f\xc8\xc0\x1d\xc6\x9b\xc9\xbc\xd2\x64\xc0\xb7\xaf\x29\x3d\xd2\x1e\x2f\xef\x47\xe8\xf7\x2d\xe5\x83\xce\x34\x0f\xe1\x5b\x80\xda\x77\x73\xaf\xee\x67\xaf\x62\x20\xe0\x43\xea\xd6\x78\xd6\x13\xcc\xb5\xa3\x73\xad\x72\xe9\xf5\x3c\xdc\xd5\x81\x1e\xd8\x9f\x71\x89\x05\x12\x8e\x5d\x89\xa2\x23\xdd\x9b\xdd\xdf\xbc\xb7\xe7\x42\xff\xa5\x36\x17\xa5\xe4\xef\x6d\x53\x58\x7c\xc6\xe6\x16\x1d\xba\x96\xa8\x29\x87\xfc\x87\xbf\x92\x43\x7e\x7b\xaf\xca\x34\x7b\x73\x20\xbb\xc0\xcd\x76\x7d\xb1\xb7\x6c\x7b\x09\xbf\xc4\xf3\x9f\x0b\xb4\xcb\x37\x01\x8b\xbd\xce\x24\xf2\x29\xda\xc2\x70\xa9\xf4\xf4\x58\xe0\x02\x4d\xca\x9f\x83\x4a\xe2\x04\xe5\x74\x6f\x76\x8e\x82\xec\x80\xbe\x5a\x5b\xe2\x71\xec\x56\x98\x12\x83\x97\x9b\xa3\xbb\x85\x2a\x3c\x71\x3f\x3d\xf3\xcd\x2e\x78\xb1\x96\xfb\x35\x9d\xac\x45\x2d\x0a\x54\x0f\x51\x76\xfd\x79\xad\x60\x2d\xa6\x3c\x26\x5e\x26\xc7\x84\x47\xcd\xbf\x6b\xcd\x01\xb5\xc4\x09\xa3\xf4\x59\x88\x7d\x43\xb1\x5f\x3d\x7b\x83\xe5\x34\xc5\x7c\xac\x6d\xba\x98\xad\x69\x6b\x1f\xd9\xb7\x47\x7d\xf5\xa5\x41\x66\xeb\x6b\x81\x35\xb7\xe4\xb1\x70\x98\x2e\x79\x9e\xdb\xe2\xbf\x1b\xbe\xbb\xa1\xbb\x4d\x5d\xa5\x55\x9a\xda\x7e\x0c\x6a\x80\x77\xa8\xf2\xda\xd8\x21\x55\x51\xc9\x0e\x89\x3e\xc8\x81\x7b\x1b\x88\xab\x2a\xad\x06\x38\x0b\x6c\x7b\x9d\xc1\xaa\x6a\x4d\x5b\xe6\x0f\x93\xed\x23\xca\x71\x4f\x19\x8e\xde\xa5\xd8\x62\x0b\xfa\x67\xcf\xbb\x95\xdc\x51\xd0\xee\xd6\x64\x78\x3e\x25\x3f\x1b\x93\x37\xe5\xd6\xbf\x0b\x1a\xeb\xbd\x83\x5e\x0b\x7a\x3a\x39\x68\x7b\xd8\xfd\x3a\xda\xa2\x5c\x07\x27\x33\x16\xe1\x85\xfe\x7e\x19\x7e\x4d\x46\xe8\x53\xca\xc3\xe0\xc5\x59\xf0\xb0\xbc\x21\xc2\x35\x3e\xe1\x7d\xd2\xb8\x39\x3c\x16\xf0\x92\xd3\xec\x0d\xa8\x69\x8b\x4e\x9d\xc6\x2a\x4d\x79\xf9\xa3\x23\x9c\x83\x4b\x2c\x55\x03\x61\x79\x70\x85\x8d\x5e\x17\xec\xc4\x9a\xf9\x7f\x20\xd8\xd2\xa2\x54\xc2\x33\xb4\xb0\xb8\x67\xbc\xf3\x79\xb5\xdf\x9f\xad\xfb\x07\x78\xcf\x2b\xdd\xf0\x13\xf3\xdf\xe0\xca\x5b\x3f\x36\x4f\x3b\x9e\x47\xcd\xbf\x5f\x5c\xfd\x67\xc3\x60\x38\xfc\x07\x4a\x7f\x8f\xbe\xd1\x33\xf4\xcd\x5f\x61\xdf\xcd\x66\xf5\xec\x0c\xb9\x6d\x12\xf4\x1c\x49\xda\xcb\x91\x3a\x29\x52\x17\x43\xea\x22\x48\xc7\xf3\xa3\x2d\x7a\xf4\x4a\x76\xd4\xb1\xf5\x22\x7e\x1e\xcd\x03\x08\x6e\x78\x50\x23\x97\x7f\x07\x00\x00\xff\xff\x39\xd9\x93\x5e\x46\x17\x00\x00") func templateDialectSqlFeatureSchemaconfigTmplBytes() ([]byte, error) { return bindataRead( @@ -746,7 +746,7 @@ func templateDialectSqlFeatureSchemaconfigTmpl() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "template/dialect/sql/feature/schemaconfig.tmpl", size: 5855, mode: os.FileMode(420), modTime: time.Unix(1, 0)} + info := bindataFileInfo{name: "template/dialect/sql/feature/schemaconfig.tmpl", size: 5958, mode: os.FileMode(420), modTime: time.Unix(1, 0)} a := &asset{bytes: bytes, info: info} return a, nil } diff --git a/entc/gen/template/dialect/sql/feature/schemaconfig.tmpl b/entc/gen/template/dialect/sql/feature/schemaconfig.tmpl index 8ab660f34..96bad6162 100644 --- a/entc/gen/template/dialect/sql/feature/schemaconfig.tmpl +++ b/entc/gen/template/dialect/sql/feature/schemaconfig.tmpl @@ -130,6 +130,8 @@ func NewSchemaConfigContext(parent context.Context, config SchemaConfig) context {{- $receiver := receiver $builder }} {{- if $.FeatureEnabled "sql/schemaconfig" }} t1.Schema({{ $receiver }}.schemaConfig.{{ $.Name }}) + ctx = internal.NewSchemaConfigContext(ctx, {{ $receiver }}.schemaConfig) + selector.WithContext(ctx) {{- end }} {{- end -}} diff --git a/entc/integration/multischema/ent/group_query.go b/entc/integration/multischema/ent/group_query.go index f695bf831..21c3a6045 100644 --- a/entc/integration/multischema/ent/group_query.go +++ b/entc/integration/multischema/ent/group_query.go @@ -511,6 +511,8 @@ func (gq *GroupQuery) sqlQuery(ctx context.Context) *sql.Selector { selector.Select(selector.Columns(group.Columns...)...) } t1.Schema(gq.schemaConfig.Group) + ctx = internal.NewSchemaConfigContext(ctx, gq.schemaConfig) + selector.WithContext(ctx) for _, p := range gq.predicates { p(selector) } diff --git a/entc/integration/multischema/ent/pet_query.go b/entc/integration/multischema/ent/pet_query.go index e0067834f..b14621bd9 100644 --- a/entc/integration/multischema/ent/pet_query.go +++ b/entc/integration/multischema/ent/pet_query.go @@ -478,6 +478,8 @@ func (pq *PetQuery) sqlQuery(ctx context.Context) *sql.Selector { selector.Select(selector.Columns(pet.Columns...)...) } t1.Schema(pq.schemaConfig.Pet) + ctx = internal.NewSchemaConfigContext(ctx, pq.schemaConfig) + selector.WithContext(ctx) for _, p := range pq.predicates { p(selector) } diff --git a/entc/integration/multischema/ent/user_query.go b/entc/integration/multischema/ent/user_query.go index 97e307867..6521db106 100644 --- a/entc/integration/multischema/ent/user_query.go +++ b/entc/integration/multischema/ent/user_query.go @@ -580,6 +580,8 @@ func (uq *UserQuery) sqlQuery(ctx context.Context) *sql.Selector { selector.Select(selector.Columns(user.Columns...)...) } t1.Schema(uq.schemaConfig.User) + ctx = internal.NewSchemaConfigContext(ctx, uq.schemaConfig) + selector.WithContext(ctx) for _, p := range uq.predicates { p(selector) } diff --git a/entc/integration/multischema/multischema_test.go b/entc/integration/multischema/multischema_test.go index f293c9144..bbebe95e7 100644 --- a/entc/integration/multischema/multischema_test.go +++ b/entc/integration/multischema/multischema_test.go @@ -12,7 +12,9 @@ import ( "github.com/facebook/ent/dialect" "github.com/facebook/ent/dialect/sql" "github.com/facebook/ent/entc/integration/multischema/ent" + "github.com/facebook/ent/entc/integration/multischema/ent/group" "github.com/facebook/ent/entc/integration/multischema/ent/migrate" + "github.com/facebook/ent/entc/integration/multischema/ent/user" "github.com/stretchr/testify/require" _ "github.com/go-sql-driver/mysql" @@ -42,12 +44,15 @@ func TestMySQL(t *testing.T) { client.Group.Create().SetName("GitHub"), client.Group.Create().SetName("GitLab"), ).SaveX(ctx) - client.User.Create().AddPets(pedro).AddGroups(groups...).SaveX(ctx) + usr := client.User.Create().AddPets(pedro).AddGroups(groups...).SaveX(ctx) - // id := client.Group.Query(). - // Where(group.HasUsersWith(user.ID(usr.ID))). - // OnlyIDX(ctx) - // require.Equal(t, pedro.ID, id) + id := client.Group.Query(). + Where(group.HasUsersWith(user.ID(usr.ID))). + Limit(1). + QueryUsers(). + QueryPets(). + OnlyIDX(ctx) + require.Equal(t, pedro.ID, id) } func setupSchema(t *testing.T, drv *sql.Driver) {