Uploaded image for project: 'ModeShape'
  1. ModeShape
  2. MODE-1362

DDL sequencer's output doesn't adhere to CND node types

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Blocker Blocker
    • 2.8.0.Final
    • 2.7.0.Final
    • Sequencers
    • None

      The DDL sequencer code does generate graph output, but the graph does not adhere to the structured defined in the CND node types. IOW, the generated output is not valid JCR output. Some of these problems are errors in the CND, but other problems are issues in the sequencer code.

      BTW, this was not caught in our tests for a couple of reasons. First, the sequencers use the graph API to generate content, and tho this is expected to adhere to the types, the sequencing framework doesn't actually verify this (since the graph API doesn't know about types). Instead, we've relied upon integration tests to run the sequencers in the context of JCR, and we do have some integration tests for the DDL sequencer. However, none of the DDL sequencer integration tests appear to work; they're all looking for a node and only continuing if that node exists – of course the tests never find that node, so the meat of the integration tests are never run.

      Another complicating factor that might help explain why this issue was not noticed is because of the way the sequencing framework and the JCR layer validation both work. Since the sequencers do parse the DDL and generate output, that output is persisted in the store. Reading that output via JCR might work actually work, depending upon how much the JCR layer validates the already-persisted content. The content might also be accessible via querying, since processing the query doesn't require JCR validation.

      In short, we have to fix the DDL sequencer code so that it produces output that IS valid per the CND types. Note that this is likely to require changes to both the sequencer code and the CND node types.

              hchiorean Horia Chiorean (Inactive)
              rhauch Randall Hauch (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: