[
https://issues.jboss.org/browse/TEIIDDES-505?page=com.atlassian.jira.plug...
]
Barry LaFond commented on TEIIDDES-505:
---------------------------------------
For clarity, the VDBs in these scenarios are error-free, by themselves. They could have
warnings, but are fully deployable and made ACTIVE in a Teiid server.
The warnings are because the VDBs are being made "out of sync" with the
workspace by performing workspace model refactoring, which doesn't automatically
update the VDBs if they contain *Copies* of the models in the workspace.
Refactored file is not reflected in VDB (no corresponding file in
workspace)
----------------------------------------------------------------------------
Key: TEIIDDES-505
URL:
https://issues.jboss.org/browse/TEIIDDES-505
Project: Teiid Designer
Issue Type: Bug
Components: Modeling, VDB & Execution
Affects Versions: 7.0
Environment: Fedora 12, JBDS 3.0.1, Teiid Designer 7 Final
Reporter: Paul Nittel
Assignee: Barry LaFond
Priority: Critical
Fix For: 8.1
Attachments: model-vdb-dependency-warning-dialog.png,
vdb-model-path-quick-fix-dialog.png, wrong-model-path-in-vdb-warning.png
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
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira