Author |
Message
|
Giraf |
Posted: Mon Jul 18, 2005 9:55 pm Post subject: Which bar file to update and deploy |
|
|
 Newbie
Joined: 17 Apr 2002 Posts: 4 Location: Belgium
|
Hi,
I'm working in an environment where about 20 execution groups are running, and more than 100 messageflows ( WBIMB 5.0 ).
Our Messageflows are using Subflows and 'shared procedures and functions' ( i.e. a library of common functions in an esql file in a separate project. )
My question is :
How do I know which Messageflows needs to be redeployed and which barfiles to update when I change a Subflow or a shared function/procedure. !!! Shared functions/procedures also can be nested, so search wouldn't help.
I don't like to update and redeploy all messageflows for each change we make. |
|
Back to top |
|
 |
Bingo |
Posted: Mon Jul 18, 2005 10:06 pm Post subject: |
|
|
Novice
Joined: 31 Mar 2005 Posts: 22
|
Before that please provide some more information:
1. Do you have a common flow where all the subflows are being attached or you have MqInput nodes for all the subflows? If you have a commong flow and you are making one bar file out of it , then i guess you need to deploy the complete bar file (including the changes).
2. I guess you need not deploy the common functions/procedures. I believe these are only E-SQL files without actual message flows in it. So once you have made the changes in the Sub-flows you can just do a rebuild and deploy the bar files.
Do let me know in case you need more help or if my understanding was incorrect in this case. |
|
Back to top |
|
 |
Giraf |
Posted: Mon Jul 18, 2005 11:31 pm Post subject: |
|
|
 Newbie
Joined: 17 Apr 2002 Posts: 4 Location: Belgium
|
1. We have a common ( generic ) Subflow for Auditing ( with one input terminal ).
Only a part of our Messageflows need to audit, so only a part will call the Subflow. In case we have to change the Auditing Subflow, we don't like to update and redeploy the messageflows not including the Subflow.
2. The actual problem is when I make a change to a function/procedure.
How do I know which Messageflows needs to be rebuild. I can't rebuild all my 120 messageflows for each change. It will take hours to create the bar files and to deploy. I can keep an inventory of which flow is using which function, but currently I've to build this inventory manually ( and hope it will be kept up to date ).
In fact, what I try to do is the 'delta deploy' of WMQI 2.1. I've the impression that the whole content of the barfile is redeployed, even when no changes happened to the content of the barfile. Should we go for one bar file per messageflow ? |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Jul 19, 2005 3:25 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
I think you need to look into using Ant and mqsideploybar.
There are no tools for the kinds of configuration management that you are looking for, that I'm aware of. I think it's obviously an unexplored product territory... but I don't know of anyone who does something similar for Java... ("find all code that calls this EJB", for example).
You could also write something that would parse the message flow files and extract what subflows they use. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
ydsk |
Posted: Tue Jul 19, 2005 7:46 am Post subject: |
|
|
Chevalier
Joined: 23 May 2005 Posts: 410
|
I worked in a similar environment. What is wrong with using the search in your toolkit ? Search for the exact esql file or msgflow or msgset in all projects. It shows all the occurences. But some of them could be dubious...like, when you have the search keyword in a comment. But that atleast helps.
This way, you might endup deploying a very few bar files that didn't have any changes. But it works fine.
Thanks. |
|
Back to top |
|
 |
Giraf |
Posted: Sun Jul 24, 2005 9:39 pm Post subject: |
|
|
 Newbie
Joined: 17 Apr 2002 Posts: 4 Location: Belgium
|
The search problem is not for Subflows/MessageSets. The problem is the search for changed functions/procedures. The search in the toolkit only works for direct function/procedure calls. It doesn't work for embedded calls ( functions calling other functions ). We are using several libraries ( e.g. soaplib, timelib, .... ). Functions/procedures of one library can call a function/procedure of the same or another library. The search only works for one level. An additional search is needed for all found functions/procedures calling the first one. |
|
Back to top |
|
 |
|