Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Validate the results of parsing in the context of each operation #2

Open
asavinov opened this issue Jul 4, 2021 · 0 comments
Open
Labels
column-sql Tasks related to Column-SQL tests Tests, validation, error handling

Comments

@asavinov
Copy link
Owner

asavinov commented Jul 4, 2021

The parser returns a syntactic structure. The task is to validate this structure.

The main alternative is

  • Validate without name resolution and bindings. It is relatively simple because we simply check the presence of elements against expected (template) structure for this operation
  • Validation with name resolution and bindings. Here we also check the query structure against the existing data schema and its names (existing columns, tables etc.) Such validation could be part of the translator or another more complex function.
  • Validation within topology translator where new operations could be added and columns or column paths could be augmented (say, using inheritance).

The minimum version could do very simple checks and executed just after the parser in order to detect simple errors. Later on, it could be integrated into the topology translator.

@asavinov asavinov added column-sql Tasks related to Column-SQL tests Tests, validation, error handling labels Jul 11, 2021
@asavinov asavinov changed the title [Column-SQL] Validate the results of parsing in the context of each operation Validate the results of parsing in the context of each operation Jul 11, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
column-sql Tasks related to Column-SQL tests Tests, validation, error handling
Projects
None yet
Development

No branches or pull requests

1 participant