Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-4612

Fuzzer for RelBuilder

    XMLWordPrintableJSON

Details

    • Test
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • core
    • None

    Description

      A generator of random rels would be useful for testing:
      a) Generate rel, write it down as SQL (ensures "Rel to SQL" does not fail), parse it back (ensures parser works OK), plans the tree (ensures the rules do not throw exceptions)

      b) Generate rel, serialize with one of the adapters (e.g. serialize to ElasticSearch).

      c) Generate rel, and execute it with https://github.com/sqlancer/sqlancer (or alike) approach to verify the results of the query. It might surface *correctness* bugs in optimizer, not just NPEs


      Open questions:
      Q1) Which tables/columns should be used? It looks like we should start with VALUES, and then we could add a random table/column generator.

      Attachments

        Activity

          People

            Unassigned Unassigned
            vladimirsitnikov Vladimir Sitnikov
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: