It seems to me that we are somewhat limited in what we can support from the previous
deployment model as compared to what we can do in a container environment. Think of other
deployment models in the container world (e.g. wars, ears, connectors, etc.). There is no
concept of multiple versions for anything else in a container, right? The file to be
deployed has to be renamed in order to not overwrite the existing deployment. I'm not
saying we couldn't add the smarts to make this work, but it would be fugly and
unconventional in our new container world.
The version field may still prove valuable as a property to indicate the version of the
deployed vdb, but only one version would/could ever be deployed at one time.
Again I should mention that deploying two versions of the same VDB (same file name) and
having them co-exist in the same container is not possible in Jopr/JON and that is due to
the restrictions of the container's deployment paradigm.
Ted
----- Original Message -----
From: "Barry Lafond" <blafond(a)redhat.com>
To: "teiid-designer-dev" <teiid-designer-dev(a)lists.jboss.org>,
"teiid-dev" <teiid-dev(a)lists.jboss.org>
Sent: Monday, February 8, 2010 11:58:24 AM GMT -06:00 US/Canada Central
Subject: Re: [teiid-dev] [teiid-designer-dev] VDB Versioning Feature
(NOTE: Posted for Mike Walker. Can't get into the list admin right now to accept his
post)
I agree with Ken's comments. This is a simple but extremely valuable
feature that emerged from a customer request. I took advantage of it
at a separate customer just last week. And the default behavior is
quite intuitive - the most recent version is the default, by default.
Have we had users or customers complain that this is confusing? If so,
then maybe docs or usability could be improved, but please don't
remove the feature, customers waited years for it.
Mike
----- Original Message -----
From: "Ken Johnson" <kejohnso(a)redhat.com>
To: "Ramesh Reddy" <rareddy(a)redhat.com>
Cc: teiid-designer-dev(a)lists.jboss.org, teiid-dev(a)lists.jboss.org
Sent: Monday, February 8, 2010 10:37:37 AM GMT -06:00 US/Canada Central
Subject: Re: [teiid-designer-dev] [teiid-dev] VDB Versioning Feature
I believe some of the characterizations below paint an overly negative
view of the current versioning capabilities. These are generally
regarded by users as valuable and with the relatively new "default
version" property very flexible. More inline.
Ramesh Reddy wrote:
In Teiid a VDB is always represented by its name and version.
Together
they both represented a unique name for VDB. Although a version
represents a particular schema version,
1) It is considered as a entirely different schema then that of the
original VDB inside the Teiid runtime.
True, from a runtime standpoint, Teiid doesn't distinguish a new vdb
from a new version of an existing vdb. It's just another vdb.
2) Usually version numbers are presented in the repository systems
with
implicit rollback behavior. Teiid gives no such rollback functionality.
Repository is somewhat orthogonal here. While users sometimes deploy
from a repository, the active VDB version is distinct from the
repository version if the repo is indeed being used at all. Currently,
there is a roll-back capability in that a later version of a deployed
vdb can be deactivated and connections revert back to the previous
version (or the new default version if the default property is being used).
3) Confusion with automatic version upgrade. If a new VDB with same
name
is deployed, then version on this VDB is upgraded to next numerical
number. The user does not even know what that version number is until
they use some tool to figure out which version number that VDB is
deployed under. This creates confusion.
This is not confusing, it's beneficial. For client apps that don't need
to know about a later version, they are not forced to change. This is
particularly important for minor, non-breaking changes. Client
applications should not be required to change simply because of a
version bump in the vdb. Client app changes are highly disruptive in an
organization - even replacing a JDBC client JAR that does not require
app code changes often needs layers of approval and test cycles.
4) If there are multiple VDB with different version numbers deployed
in
runtime and client is connecting with no explicit version number, then
Teiid connects to "latest" or a VDB at "default" level. This again
seems
magical than honoring the explicit behavior.
This "magic" is good. Clients *can* be explicit if desired but do not
*have to* be explicit. Very powerful.
5) Schema version is generally not supported by any RDBMS vendors.
True but IMHO this is not a reason to drop the feature. Teiid, though
like a RDBMS in many ways is not a RDBMS.
6) In MMx product line this meant to represent the metadata
repository
version, but Teiid no longer has this concept.
This is not correct. the version is disconnected from the repository
entirely. It is simply a deployed version number.
7) It was a way to move production users from one version of the VDB
to
another with out interruptions. In our opinion, this is more for the
development environments than prod.
Agree this will be more common in pre-production, particularly staging
environments due to the level of dynamism. However that does not mean
it's exclusive to pre-production.
so, we would like to propose to remove this "version"
feature from
Teiid. If users want they can manage the this through explicit VDB
names.
I disagree with this proposal as it will tighten the coupling between
client applications and vdbs and take away a layer of indirection and
flexibility that's valuable at the data services layer.
Please let us know if you think this feature is worth keeping and
why?
I do!
Thanks
Ramesh..
_______________________________________________
teiid-dev mailing list
teiid-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/teiid-dev
--
Ken Johnson
Sr. Product Manager
JBoss Middleware Business Unit
Red Hat, Inc
978.392.3917
ken.johnson(a)redhat.com
_______________________________________________
teiid-designer-dev mailing list
teiid-designer-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/teiid-designer-dev
_______________________________________________
teiid-dev mailing list
teiid-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/teiid-dev