Re: [nfsv4] Hang when trying to process rfc8881 converted to an I-D

Jean Mahoney <jmahoney@amsl.com> Tue, 18 August 2020 18:14 UTC

Return-Path: <jmahoney@amsl.com>
X-Original-To: nfsv4@ietfa.amsl.com
Delivered-To: nfsv4@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9FD4B3A08FA; Tue, 18 Aug 2020 11:14:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.848
X-Spam-Level:
X-Spam-Status: No, score=-2.848 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, NICE_REPLY_A=-0.949, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 62EDPeh8vl02; Tue, 18 Aug 2020 11:14:44 -0700 (PDT)
Received: from mail.amsl.com (c8a.amsl.com [4.31.198.40]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F0DD73A08EC; Tue, 18 Aug 2020 11:14:43 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by c8a.amsl.com (Postfix) with ESMTP id 159EA3C25A4; Tue, 18 Aug 2020 11:14:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
Received: from c8a.amsl.com ([127.0.0.1]) by localhost (c8a.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6VcivHsuPqIb; Tue, 18 Aug 2020 11:14:26 -0700 (PDT)
Received: from AMSs-MacBook-Pro.local (unknown [47.186.30.41]) by c8a.amsl.com (Postfix) with ESMTPSA id 83D843C25A3; Tue, 18 Aug 2020 11:14:26 -0700 (PDT)
To: Henrik Levkowetz <henrik@levkowetz.com>, "Noveck, David" <David.Noveck@netapp.com>, "tony@att.com" <tony@att.com>
Cc: Chuck Lever <chuck.lever@oracle.com>, nfsv4-chairs <nfsv4-chairs@ietf.org>, "nfsv4-ads@ietf.org" <nfsv4-ads@ietf.org>, "nfsv4@ietf.org" <nfsv4@ietf.org>
References: <MN2PR06MB5597B574955103F5EF543823E15C0@MN2PR06MB5597.namprd06.prod.outlook.com> <c7a93397-bb4b-ce6a-41a8-12486b4ef3fe@levkowetz.com>
From: Jean Mahoney <jmahoney@amsl.com>
Message-ID: <137cb358-bfd0-fcbb-b142-b5b1ba5f744c@amsl.com>
Date: Tue, 18 Aug 2020 13:14:42 -0500
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:68.0) Gecko/20100101 Thunderbird/68.11.0
MIME-Version: 1.0
In-Reply-To: <c7a93397-bb4b-ce6a-41a8-12486b4ef3fe@levkowetz.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/nfsv4/EEH032ZoD7djX6u6n9T5ACPRBk4>
Subject: Re: [nfsv4] Hang when trying to process rfc8881 converted to an I-D
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NFSv4 Working Group <nfsv4.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/nfsv4/>
List-Post: <mailto:nfsv4@ietf.org>
List-Help: <mailto:nfsv4-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 18 Aug 2020 18:14:47 -0000

Thanks, Henrik!

Some comments inline --

On 8/18/20 12:41 PM, Henrik Levkowetz wrote:
> Hi David,
>
> On 2020-08-18 17:34, Noveck, David wrote:
>> I’m trying to use xml2rfc to process an I-D essentially duplicating
>> the contents of rfc8881.xml.   The goal is to have a starting point
>> for the working group to enable work on an rfc5661bis.  So far, it
>> seems that xml2rfc always hangs/times out/aborts when I try this ☹
> Yes, the online service at xml2rfc.ietf.org takes about 13 minutes to
> process the 2.4 Mbytes xml file, which stretches far beyond the web
> server timeout.  It's an old machine.  Unfortunately, I think this
> document is too large to process with the online service as it currently
> exists.
>
> Processing the original rfc8881.xml on my desktop, I get a processing
> time of 1m 15s.

[JM] For anyone who wants to use xml2rfc on their own machine, the 
download instructions are here:

https://pypi.org/project/xml2rfc/


>
>> I’m using Jean’s instructions (originally directed to another
>> purpose) on how to do this but they don’t seem to work:
>>
>> *   Remove number="8881" from the <rfc> element.
>> *   Remove the <seriesInfo> element
> Yup, those are good instructions.
>
> After doing so, the processing time on my desktop is slightly under 1m.
>
> Additionally, in order to make it easier to work with the XML, I would
> recommend doing 'unprep' on the xml, in order to undo the full expansion
> of all attributes etc. which is done before publication.  Doing so will
> give you less verbose XML.
>
> On the command-line, that would be:
>
>     $ xml2rfc --unprep rfc8881b.xml
>      Unprepping rfc8881b.xml
>      Created file rfc8881b.plain.xml

[JM]  The non-prepped file is also available here:

https://www.rfc-editor.org/in-notes/prerelease/rfc8881.notprepped.xml


>
> Renaming that to draft-ietf-nfsv4-rfc5661bis.xml, I got this on my
> desktop machine:
>
>     $ time xml2rfc draft-ietf-nfsv4-rfc5661bis.xml
>     /home/henrik/src/xml2rfc/trunk/cli/draft-ietf-nfsv4-rfc5661bis.xml(36): Warning: The document date (2020-08-01) is more than 3 days away from today's date
>      Created file draft-ietf-nfsv4-rfc5661bis.txt
>
>     real	0m45.022s
>     user	0m44.020s
>     sys	0m0.210s
>
>
> Best regards,
>
> 	Henrik

[JM] There are some other tweaks to make to the <rfc> element to create 
a bis I-D (not necessary to produce output, but to ensure that the 
header contains correct info):

https://www.rfc-editor.org/materials/FAQ-xml2rfcv3.html#name-how-do-i-use-the-rfc-elemen


>
>> In fairness to Jean, let me note that this suggestion were made
>> before a big set of last-minute changes were made to the .xml file
>> just before actual rfc publication.   I’m pretty sure these happened
>> after author sign-off.  These include new v3 elements, that, as far
>> as I can determine, have never been documented: <toc>, <boilerplate>,
>> <copyright>.

[JM] Before publication, a preptool is used to pull all external content 
into the final prepped file so that the publication file does not have 
external dependencies.  This introduces XML elements like <toc> and 
<boilerplate> and the copyright text.

RFC 7991 covers the v3 vocabulary, but there have been some minor 
updates. The latest information can be found here:

    https://xml2rfc.tools.ietf.org/xml2rfc-doc.html


Best regards,

Jean


>> I think we need to get this resolved as soon as possible.  Some
>> possibilities:
>>
>> *   Debug xml2rfc so it handles a file prepared using Jean’s
>> approach.   I can provide rfc8881asID.xml if that would be helpful in
>> debugging this.
>> *   Provide updated instructions on how to convert an RFC to a
>> corresponding I-D.   I’ve tried deleting the <toc> element, deleting
>> the entire <boilerplate> element but so far no luck ☹
>> *   Provide an .xml that includes all the substantive changes made
>> during the process of preparing the RFC for publication, but none of
>> the ones that happened after the authors signed off.  I may be naïve,
>> but I feel it is worth trying Jean’s procedure on that .xml file.