Skip to content

Half dunder properties are very unhappy #9086

@jackfischer

Description

@jackfischer
  • Gel Version: 6.11
  • Gel CLI Version: 7.8.0
  • OS Version:

Steps to Reproduce:

  1. create a property prefixed with __
  2. ISE on all queries

Thankfully you seem to be able to migrate out of this.

No big deal to just block these, but the current state was super concerning because we obviously got into undefined behavior land.

jack@Jacks-MacBook-Air-2 ~/d/gel-test> ccat dbschema/default.gel
module default {

  type Example {
    property s: str;
  }

}
jack@Jacks-MacBook-Air-2 ~/d/gel-test> gel migration create
Created dbschema/migrations/00001-m1mpazr.edgeql, id: m1mpazr6is74zo4wb4fon5lofp4v67rbeyvmeng5sc7nlsxyb2kopa
jack@Jacks-MacBook-Air-2 ~/d/gel-test> gel migrate
Automatic backup is enabled, see the full backup list with "gel instance list-backups -I gel_test".
Read more at https://geldata.com/p/localdev
Running automatic backup of local instance gel_test...
Created full backup:
24.54 MiB /Users/jack/Library/Application Support/edgedb/data/gel_test.backups/0199cad2-7d6d-7093-9575-788796b53c0f
Applying m1mpazr6is74zo4wb4fon5lofp4v67rbeyvmeng5sc7nlsxyb2kopa (00001-m1mpazr.edgeql)
... parsed
... applied
jack@Jacks-MacBook-Air-2 ~/d/gel-test> nvim dbschema/default.gel
jack@Jacks-MacBook-Air-2 ~/d/gel-test> ccat dbschema/default.gel
module default {

  type Example {
    property __s: str;
  }

}
jack@Jacks-MacBook-Air-2 ~/d/gel-test> gel migration create
did you rename property 's' of object type 'default::Example' to '__s'? [y,n,l,c,b,s,q,?]
> y
Created dbschema/migrations/00002-m16cqsk.edgeql, id: m16cqskrcnp5ulebdxrp7azd5jrnhrywgwbklmv77wimegja3d4cea
jack@Jacks-MacBook-Air-2 ~/d/gel-test> gel migrate
Automatic backup is enabled, see the full backup list with "gel instance list-backups -I gel_test".
Read more at https://geldata.com/p/localdev
Running automatic backup of local instance gel_test...
Created Incremental backup:
1.54 MiB /Users/jack/Library/Application Support/edgedb/data/gel_test.backups/0199cad3-008b-7980-b049-717fbbec0218
Applying m16cqskrcnp5ulebdxrp7azd5jrnhrywgwbklmv77wimegja3d4cea (00002-m16cqsk.edgeql)
... parsed
... applied
jack@Jacks-MacBook-Air-2 ~/d/gel-test> gel
                     ▄██▄
   ▄▄▄▄▄      ▄▄▄    ████
 ▄███████▄ ▄███████▄ ████
 ▀███████▀ ▀███▀▀▀▀▀ ████
   ▀▀▀▀▀      ▀▀▀     ▀▀
  ▀▄▄▄▄▄▀
    ▀▀▀

Gel 6.11+d3def61 (repl 7.8.0+a030e9f)
Type \help for help, \quit to quit.
gel_test:main> select Example {*};
gel error: InternalServerError: column Example~3.__s does not exist
  Server traceback:
      edb.errors.InternalServerError: column Example~3.__s does not exist
gel_test:main>

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions