Uploaded image for project: 'Teiid Designer'
  1. Teiid Designer
  2. TEIIDDES-505

Refactored file is not reflected in VDB (no corresponding file in workspace)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Critical
    • 8.1
    • 7.0
    • Modeling, VDB & Execution
    • None
    • When models are refactored (renamed or moved) in a project, new validation warnings are created if the refactored model is contained in one or more VDBs. A Quick Fix action is available which will synchronize a VDB and remove those warnings.

    Description

      I created a VDB which contained source and view models. I Refactor > Renamed one virtual model. When I opened the VDB, the original file was present and, when the mouse hovered over the file, this message was displayed, "This entry has no corresponding file in the workspace".

      I believe the VDB's contents should have been involved in the refactoring, just like other files.

      There are numerous scenarios of VDBs that are out of synch with their workspace if they create multi-model VDBs in a project and begin moving, renaming or deleting files from that same project. Below are a few scenarios that cover the simplest and most common use cases.

      Scenario 1: Refactor > Move source model.

      • User has source model in a VDB and the model exists in the workspace
      • User moves the source model to different folder in project
      • Result: VDB now has source model path that is not valid
      • Desired End State: VDB's source model path is updated to reflect new project location
      • Proposed Solution:
        • Display a dialog when launching Refactor > Move action warning user that VDBs exist in project that contain the selected model and possible side-effects
        • Add a VdbBuilder that creates validation Warning marker stating the path is out of sync with model in workspace
        • Provide Quick Fix action to fix the model path in the VDB

      Scenario 2: Refactor > Move source model.

      • User has source and dependent view model in a VDB and the models exist in the workspace
      • User moves a source model to different folder in project
      • Result: VDB now has source model path that is not valid
      • Result: VDB now contains view model that is out of sync with workspace model due to updated model import statement
      • Desired End State: VDB's source model path is updated to reflect new project location and view model is synchronized
      • Proposed Solution:
        • Display a dialog when launching Refactor > Move action warning user that VDBs exist in project that contain the selected model and possible side-effects
        • The VdbBuilder creates validation Warning marker stating the path is out of sync with model in workspace
        • The VdbBuilder creates validation Warning marker stating the view model is out of sync
        • Provide Quick Fix action to fix the source model path and update the view model in the VDB

      Scenario 3: Delete source model

      • User has source model in a VDB and the model exists in the workspace
      • User deleted the source model
      • Result: VDB now has source model that does NOT exist in workspace
      • Desired End State: Source model is replaced in proper location in workspace
      • Proposed Solution:
        • Display a dialog when launching Delete action warning user that VDBs exist in project that containing the selected model and possible side-effects
        • Add a VdbBuilder that creates validation Warning marker stating the source model does NOT exist in the workspace

      Scenario 4: Refactor > Rename source model

      • User has source model in a VDB and the model exists in the workspace
      • User renames the source model
      • Result: VDB now has source model with wrong name
      • Desired End State: VDB's source model is replaced in the VDB
      • Proposed Solution:
        • Display a dialog when launching Refactor > Rename action warning user that VDBs exist in project that contain the selected model and possible side-effects
        • Add a VdbBuilder that creates validation Warning marker stating the source model does NOT exist in the workspace
        • Add a VDB Refactor Model handler that can work with refactoring framework to swap out the source model in the VDB

      Attachments

        Issue Links

          Activity

            People

              blafond Barry LaFond
              pnittel_jira Paul Nittel (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: