]
Brian Stansberry commented on WFLY-6773:
----------------------------------------
[~maeste] He has a reload there in between removing the DS and removing the driver. The
fact that the driver remove responds with ""response-headers" =>
{"process-state" => "reload-required"}" is suspicious though.
Use the high level CLI "reload" command instead of the low level
":reload()" operation. With the command the CLI waits for the server to complete
reload; with the low level op the reload is triggered and the server responds saying that
it has been triggered but that's it. If your changes are in a CLI script it's
possible the driver remove is happening before the reload actually happens. That seems
unlikely but it's the only thing I can think of and regardless, the high level command
is the way to do a reload.
Provide ability to start/stop Data Source creation without restart of
server
----------------------------------------------------------------------------
Key: WFLY-6773
URL:
https://issues.jboss.org/browse/WFLY-6773
Project: WildFly
Issue Type: Enhancement
Components: JCA
Affects Versions: 10.0.0.Final
Reporter: Ramesh Reddy
Assignee: Stefano Maestri
Currently in WF 10, where a data source is created / removed using the CLI the
"reload-status" is set to "requires restart", based how the resource
is expected to be managed in WF.
h3. Why We need it?
In Teiid, it is common practice to add/remove data sources dynamically and restarting
server will affect performance and usability severely.
* Because delete/re-add is in Teiid's workflow to manage a data sources and when we
have to restart we loose the whole state of the virtual database. That means we need
re-establish runtime status. For example, all the existing sessions will be killed.
* Runtime environment are often shared, that could kill other person's tasks in
flight leaving them hanging with errors.
* Every time data source starts we fetch metadata from the source, this is very expensive
operation.
* With multi-source feature, it is a feature that user dynamically brings in/out sources
as they show up on their dashboard, it would be not possible to support this feature.
* This is a change of behavior from earlier versions of the EAP, our users and customers
rely on this feature
As per Teiid project is concerned, we consider this is regression on WF and thus a bug.
h3. Proposed Solution
[~brian.stansberry] suggested the WF management practices here in this document
https://docs.jboss.org/author/display/WFLY10/Admin+Guide#AdminGuide-Apply...
Based on this the conclusion is that Data Sources, is developed under
"all-services" paradigm, not under "resource-services" paradigm,
where a explicit header from client to whether to restart or not can avoid having to
"reload" the server when a new DS is added or removed. We understand the nature
of service dependencies in WF, and how this can affect the other dependent services, but
we verified that Teiid will not have those side effects as we designed. Since these
sources are effectively exclusively defined for Teiid should not interfere with others.
Also, since the request is explicit, should not affect current behavior.
h3. Workarounds Considered
Since this highly dependent on configuration based data source creation, we can opt to a
deployment based data source creation (-ds.xml), however GSS is quick to dismiss this as
this not supported feature.