Closed Bug 190596 Opened 22 years ago Closed 19 years ago

Fragile assumptions about XML serialization in utility to import bugs from XML

Categories

(Bugzilla :: Bug Import/Export & Moving, defect)

defect
Not set
major

Tracking

()

RESOLVED FIXED
Bugzilla 2.22

People

(Reporter: bkline, Assigned: gregaryh)

References

Details

(Whiteboard: [blocker will fix])

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.0.2) Gecko/20021120 Netscape/7.01 Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.0.2) Gecko/20021120 Netscape/7.01 The code to import bugs from an XML document uses a bizarre approach to finding the elements it's looking for, assuming it knows where the elements are by position. If the whitespace nodes contained in the serialization of the XML document do not exactly match what the code naively expects, the bugs are not imported correctly, or are not imported at all. It's even possible to submit an XML document which results in an amusing email report that "0.5 bug(s) successfully moved from ...." Reproducible: Always Steps to Reproduce: 1. Create an XML bugzilla document with no extra whitespace nodes between elements. 2. Run importxml.pl. 3. Check your email. Actual Results: No bugs were imported. Expected Results: Imported the bugs. This should really be a separate bug, assuming I'm right, but there should be documentation of the requirements for the XML document used by importxml.pl to import bugs. I'll defer filing it to give folks a chance to tell me I just wasn't looking in the right place for the documentation. Saying I should have used the source is not an appropriate substitute in this case, given the cryptic approach used by the code in this utility for dealing with the data in the XML document.
yeah, docs bug already exists (bug 189154) like any good XML, the requirements are in a DTD file. :) http://bugzilla.mozilla.org/bugzilla.dtd since whitespace between tags is supposed to be optional in XML, if a lack of whitespace is killing it, we definitely have a problem....
OS: Linux → All
Hardware: PC → All
*** Bug 190598 has been marked as a duplicate of this bug. ***
> like any good XML, the requirements are in a DTD file. :) > > http://bugzilla.mozilla.org/bugzilla.dtd I'm hoping that your smiley means that you are joking in this case. Since this DTD has not a single comment one would ordinarily assume that the element/attribute names and DTD structural requirements convey everything the programmer needs to know in order to generate useful XML documents for the import utility. Given that every child element except bug_id under 'bug' is optional, according to the DTD, this would mean that the import utility would do something useful if any of those elements are omitted, and that any guesses I make about what should go in the attributes for the document-level element would be acceptable, right? :->} (Oops, I just inadvertantly created a duplicate of this bug with the refresh button in another browser window; I'll suppress it if I have adequate permissions. That's one of the problems we had with our home-grown tracking system we were hoping to eliminate by switching to Bugzilla. Sigh.)
> Given that every child element except bug_id under 'bug' is > optional, according to the DTD, this would mean that the import utility would > do something useful if any of those elements are omitted, No, it means that it's valid to export a bug with any number of the elements present. This particular bug import utility might require them all to be present before working; others (for example, Scarab's) may not. Who knows? I of course agree that our XML import is too fragile and should be fixed, but I don't see anything wrong with our DTD. > Oops, I just inadvertantly created a duplicate of this bug with the refresh > button in another browser window Does your browser not warn you about the resubmission of POST requests? Gerv
> No, it means that it's valid to export a bug with any number of the elements > present. This particular bug import utility might require them all to be > present before working; others (for example, Scarab's) may not. Who knows? > > I of course agree that our XML import is too fragile and should be fixed, but I > don't see anything wrong with our DTD. I think you missed the smileys. The DTD is not the problem I was originally referring to, it's the lack of documentation for the utility. Dave jokingly suggested that no further docs would be necessary, since we have a DTD (he was kidding), and I was just playing along with the gag. > Does your browser not warn you about the resubmission of POST requests? Yes, sorry, that was my fault. I apologize. Won't happen again.
<offtopic> > Does your browser not warn you about the resubmission of POST requests? That doesn't excuse us from detecting/attempting to prevent it, but that's a different bug (bug 46843, to be exact) </offtopic>
Component: Bugzilla-General → Bug Import/Export & Moving
Reassigning bugs that I'm not actively working on to the default component owner in order to try to make some sanity out of my personal buglist. This doesn't mean the bug isn't being dealt with, just that I'm not the one doing it. If you are dealing with this bug, please assign it to yourself.
Assignee: justdave → import-export
QA Contact: mattyt-bugzilla → default-qa
Depends on: 285614
Assignee: import-export → ghendricks
Status: UNCONFIRMED → NEW
Ever confirmed: true
AFAIK, this bug will be fixed by bug 285614. Greg, am I right?
Whiteboard: [blocker will fix]
yes, check dependencies ;)
fixed by bug 285614
Status: NEW → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Target Milestone: --- → Bugzilla 2.22
You need to log in before you can comment on or make changes to this bug.