You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Having written extensive processing of requests for generating detailed metrics and re-creating project level staging state based on multiple requests I have run into quite some issues with the structure of the data and a few clear bugs.
Based on the structure I am going to assume this organically grew into this structure as it makes little sense to design it like this. The disconnect between <history> and <review> or <priority> is rather painful and repeating data rather than providing the other value that would be useful is also silly and frustrating.
One would expect when passing withfullhistory=1 that it would be clear to re-create simple things like when and who added a review and when and who changed its state, but it really is not.
When a review is first added it will look something like:
Not only is <history> used to denote something in the future of the parent <review> element, but for only the current state and person who last changed can be seen. It is no longer possible to see that the review was added by jberry. This is rather useless and utterly confusing when one considers that all the values on the <review> tag represent the current state except the when which represents the original state. What!?
If one looks at the <history> elements, one can find the relevant data, but there is no clear data that indicates this was for the jberry_factory review.
<historywho="jberry"when="2017-09-22T19:23:56">
<description>Request got a new review request</description>
<comment>staging review</comment>
</history>
Unfortunately, short of guessing the when field is the only one that may match. Depending on how long OBS took to process the data may not be identical and I have found can vary by a fair bit. Obviously, multiple reviews could have been added simultaneously or close enough to mess this up. One would expect that withhistory, much less withfullhistory would actually contain a real history instead of a sub element that contains duplicate information that is already contained on the parent element in a very wacky mix.
Multiple state changes where a request is reviewed multiple times is even less trivial to walk since any comments are no longer unique enough to parse. This really does not need to be this way.
Walking <priority> changes is just as bad, since one has to parse the <history> description text to see the state changes.
One can only imagine the level of absurd workarounds that I have implemented to extract something reasonable from this data. This should really be fixed.
The text was updated successfully, but these errors were encountered:
Having written extensive processing of requests for generating detailed metrics and re-creating project level staging state based on multiple requests I have run into quite some issues with the structure of the data and a few clear bugs.
<history>
element for<priority>
changeBased on the structure I am going to assume this organically grew into this structure as it makes little sense to design it like this. The disconnect between
<history>
and<review>
or<priority>
is rather painful and repeating data rather than providing the other value that would be useful is also silly and frustrating.One would expect when passing
withfullhistory=1
that it would be clear to re-create simple things like when and who added a review and when and who changed its state, but it really is not.When a review is first added it will look something like:
Note that
jberry
added a review forjberry_factory
. Afterjberry_factory
accepts the review the results looks like the following.Not only is
<history>
used to denote something in the future of the parent<review>
element, but for only the current state and person who last changed can be seen. It is no longer possible to see that the review was added byjberry
. This is rather useless and utterly confusing when one considers that all the values on the<review>
tag represent the current state except thewhen
which represents the original state. What!?If one looks at the
<history>
elements, one can find the relevant data, but there is no clear data that indicates this was for thejberry_factory
review.Unfortunately, short of guessing the
when
field is the only one that may match. Depending on how long OBS took to process the data may not be identical and I have found can vary by a fair bit. Obviously, multiple reviews could have been added simultaneously or close enough to mess this up. One would expect thatwithhistory
, much lesswithfullhistory
would actually contain a real history instead of a sub element that contains duplicate information that is already contained on the parent element in a very wacky mix.Multiple state changes where a request is reviewed multiple times is even less trivial to walk since any comments are no longer unique enough to parse. This really does not need to be this way.
Walking
<priority>
changes is just as bad, since one has to parse the<history>
description text to see the state changes.One can only imagine the level of absurd workarounds that I have implemented to extract something reasonable from this data. This should really be fixed.
The text was updated successfully, but these errors were encountered: