version 1.1.2.9, 2013/09/17 16:24:34
|
version 1.1.2.14, 2013/10/14 16:25:56
|
|
|
checkin to head of tree. Please feel free to add notes, etc in this | checkin to head of tree. Please feel free to add notes, etc in this |
section as you review/test.>>>>>> | section as you review/test.>>>>>> |
| |
NOTES On working with task branch. |
|
|
|
Merge out Process |
|
|
|
To keep our TASK branch in sync with the current head of tree we need |
|
to do a regular merge out. the TaskMakefile contains the makefile |
|
procedures to do this efficiently. NOTE: Following these procedures is |
|
important in that you are merging out new material each time you do |
|
the merge out. If you were just to repeatedly merge out, you would be |
|
merging previously merged changes a second time causing a real mess. |
|
|
|
Start with new directory and put TaskMakefile above pegasus (needed so you |
|
have this file for the initial operations. |
|
|
|
make -f TaskMakefile branch_merge_out BNAME=PEP317-pullop ## takes a long time |
|
|
|
This checks out current head, merges it into task branch and sets tags |
|
for the mergeout. Note that at the end of this step this work is |
|
part of the TASK... branch. |
|
|
|
NOW check for conflicts, errors, etc. that resulted from the merge. |
|
Look for conflict flags, compare the results (I use linux merge as a |
|
good graphic compare tool) and build and test. When you are satisfied |
|
that the merge out is clean, you can commit the results to the TASK... |
|
branch |
|
|
|
To commit the work to this into Task branch |
|
|
|
make -f mak/TaskMakefile branch_merge_out_commit BNAME=PEP317-pullop |
|
|
|
or manually commit and finish as follows |
|
|
|
cvs commit |
|
make -f mak/TaskMakefile branch_merge_out_finish BNAME=PEP317-pullop |
|
|
|
## This last step is important since it cleans up temporary tags to prepare |
|
you for the next checkout |
|
|
|
COMPARE TASKBRANCH WITH HEAD |
|
|
|
In a new pegasus work space do same as above for merge out. |
|
|
|
make -f TaskMakefile BNAME=PEP317-pullop |
|
|
|
This produces a result which is all of the head merged into the branch. |
|
A diff of this is all the new changes to the head of tree that you will |
|
include into the merge. |
|
|
|
|
|
TODO list: | TODO list: |
1. Binary operation from OOP. Need to add counter to binary | 1. Binary operation from OOP. Need to add counter to binary |
protocol to be able to count objects in response. Generates | protocol to be able to count objects in response. Generates |
warnings in things like messageserializer and does not work with | warnings in things like messageserializer and does not work with |
OOP right now. |
OOP right now. Corrected by converting to XML. |
2. OpenExecQuery - Code is incorrect in that it used InstancesWithPath | 2. OpenExecQuery - Code is incorrect in that it used InstancesWithPath |
where the spec is instances with no path. Need new function to wrap | where the spec is instances with no path. Need new function to wrap |
getInstanceElement(withoutPathElement) in XmlReader. Note that | getInstanceElement(withoutPathElement) in XmlReader. Note that |
|
|
pull not completed so we feed the responses back to the EnmerationContext | pull not completed so we feed the responses back to the EnmerationContext |
queues | queues |
3. Lots of minor TODOs, diagnostics, etc. | 3. Lots of minor TODOs, diagnostics, etc. |
4. External runtime variables. Decide this as part of PEP. The variables |
4. External runtime variables. Proposing that they be fixed for this release |
exist in CIMOperationRequestDispatcher but not in CIMConfig. The primary |
rather than set by configuration. This should be discussed. |
ones to consider are: |
|
a. System maxObjectCount. Setting some maximum size on what a pull |
|
client can request (i.e. the maximum size of the maxObjectCount on |
|
Open... and pull operations. |
|
b. Pull interoperationTimeout (max times between operations). This is |
|
the maximum number of seconds on the operationTimeout parameter of the |
|
Open operations |
|
c. Maximum size of the responseCache before it starts backing up |
|
responses to the providers. |
|
5. Decision on EnumerationContext timeout (separate thread or just | 5. Decision on EnumerationContext timeout (separate thread or just |
checks during other operations). Can we, in fact really keep the | checks during other operations). Can we, in fact really keep the |
enumeration context table and queue under control without monitoring | enumeration context table and queue under control without monitoring |
|
|
b. We should protect against providers that no not every finish delivering | b. We should protect against providers that no not every finish delivering |
or take to long between deliveries. This does not exist in Pegasus | or take to long between deliveries. This does not exist in Pegasus |
today | today |
6. Clean up code in Dispatcher. Want to at least reduce the code for the |
6. Further clean up code in Dispatcher. Want to at least reduce the code for the |
Open Operations to a set of templates so we know that the code is the | Open Operations to a set of templates so we know that the code is the |
same for all operations. Right now the existing operations enum, assoc, |
same for all operations. Most of the common code for the enum, assoc, |
etc. are all in templates but not the open operations. Note that the |
ref operations and their corresponding open/pull operations is now in a |
|
set of template functions so that it is largely common code. Used the |
|
templates where there is common code but not the same CIMMessage. However, |
|
we should be able to do some of it with common functions (i.e. not templates) |
|
by adding a layer to CIMMessage hiearchy and reduce code size. The |
pull is a single template for both pullInstances and pullInstancePaths. | pull is a single template for both pullInstances and pullInstancePaths. |
However, we might be able to reduce this to a single function by adding | However, we might be able to reduce this to a single function by adding |
a new level to CIMMessage.h (CommonPullResponse) | a new level to CIMMessage.h (CommonPullResponse) |
|
|
contains the pull data. Then we can use a single function to process all | contains the pull data. Then we can use a single function to process all |
pull operations. | pull operations. |
b. test the enumeration timeout thread | b. test the enumeration timeout thread |
c. New Mergout to bring up to to date again. |
|
d. Fix known problem with the interop provider. |
13 October 2013 CVS branch update. |
|
1. Integrated bug 9786 into the branch. Note that we need to test the |
|
generated statistics. |
|
2. Mergeout executed to update to head of tree as of 8:00 am 13 October 2013. |
|
3. Cleaned up several errors in OOP processing. Note that there is at least |
|
one issue left when we to a pull on ManagedElement in at least one of the |
|
namespaces. |
|
4. Cleaned up some of the outstanding diagnostic code |
|
5. Generally passes all tests except for one test of pullop where it is trying |
|
to pull enum instances CIM_ManagedElement from a particular namespace. |
|
|
|
30 September 2013 - CVS Update |
|
Mergeout head of tree up to 29 September 2013. |
|
|
|
29 September 2013. CVS update. |
|
1. Modified calls to statisticalData.cpp to a) directly call with request |
|
type, b) incorporate the open, pull, etc. messages. However, since these |
|
are not part of the CIM class, we must do something special with them. |
|
See bug 9785 for full solution to this issue. |
|
2. Corrected OOP interface to enable new flag to indicate internal operations |
|
and set host, etc. |
|
3. Add code to CQLOperationsDispatcher and WQLOperationDispatcher to clean |
|
up CIMResponseDataCounter after filtering. |
|
4. Modified ProviderAgent to set Host info for some pull operations. |
|
5. Added new flag to CIMBinMsgSerializer and Deserializer. |
| |
17 September 2013 CVS update (Actually two different updates over 3 days) | 17 September 2013 CVS update (Actually two different updates over 3 days) |
1. Clean up some issues in CIMMessage.h and CIMMessage.cpp | 1. Clean up some issues in CIMMessage.h and CIMMessage.cpp |
|
|
7. Today, passes all tests in pullop but issue in alltests. For some reason | 7. Today, passes all tests in pullop but issue in alltests. For some reason |
not finding CIMObjectManager instance. Also, leaves enumeration contexts | not finding CIMObjectManager instance. Also, leaves enumeration contexts |
if client terminates since cleanup thread not operating. | if client terminates since cleanup thread not operating. |
|
8. XML from OOP not correctly processed. |
| |
14 September 2013 CVS update | 14 September 2013 CVS update |
Merged out up to 25 August. Cleaned up all operations and standardized code. | Merged out up to 25 August. Cleaned up all operations and standardized code. |
|
|
The default of this parameter is to refuse operat | The default of this parameter is to refuse operat |
| |
In the current release of Pegasus these are all compile time parameters. | In the current release of Pegasus these are all compile time parameters. |
|
|
|
|
|
NOTES On working with task branch. |
|
|
|
Merge out Process |
|
|
|
To keep our TASK branch in sync with the current head of tree we need |
|
to do a regular merge out. the TaskMakefile contains the makefile |
|
procedures to do this efficiently. NOTE: Following these procedures is |
|
important in that you are merging out new material each time you do |
|
the merge out. If you were just to repeatedly merge out, you would be |
|
merging previously merged changes a second time causing a real mess. |
|
|
|
Start with new directory and put TaskMakefile above pegasus (needed so you |
|
have this file for the initial operations. |
|
|
|
make -f TaskMakefile branch_merge_out BNAME=PEP317-pullop ## takes a long time |
|
|
|
This checks out current head, merges it into task branch and sets tags |
|
for the mergeout. Note that at the end of this step this work is |
|
part of the TASK... branch. |
|
|
|
NOW check for conflicts, errors, etc. that resulted from the merge. |
|
Look for conflict flags, compare the results (I use linux merge as a |
|
good graphic compare tool) and build and test. When you are satisfied |
|
that the merge out is clean, you can commit the results to the TASK... |
|
branch |
|
|
|
To commit the work to this into Task branch |
|
|
|
make -f mak/TaskMakefile branch_merge_out_commit BNAME=PEP317-pullop |
|
|
|
or manually commit and finish as follows |
|
|
|
cvs commit |
|
make -f mak/TaskMakefile branch_merge_out_finish BNAME=PEP317-pullop |
|
|
|
## This last step is important since it cleans up temporary tags to prepare |
|
you for the next checkout |
|
|
|
COMPARE TASKBRANCH WITH HEAD |
|
|
|
In a new pegasus work space do same as above for merge out. |
|
|
|
make -f TaskMakefile BNAME=PEP317-pullop |
|
|
|
This produces a result which is all of the head merged into the branch. |
|
A diff of this is all the new changes to the head of tree that you will |
|
include into the merge. |
|
|