Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dtxCN-0000up-Vy for pgsql-docs@arkaria.postgresql.org; Mon, 18 Sep 2017 14:39:00 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1dtxCN-0001cX-GA for pgsql-docs@arkaria.postgresql.org; Mon, 18 Sep 2017 14:38:59 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1dtxBz-0000wy-JS for pgsql-docs@postgresql.org; Mon, 18 Sep 2017 14:38:35 +0000 Received: from mail-lf0-x22a.google.com ([2a00:1450:4010:c07::22a]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1dtxBv-0003h3-VW for pgsql-docs@postgresql.org; Mon, 18 Sep 2017 14:38:34 +0000 Received: by mail-lf0-x22a.google.com with SMTP id r17so775410lff.6 for ; Mon, 18 Sep 2017 07:38:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language; bh=OLrkghI5vGY69hQwuU2zgmvsiJavY+BSdqOLzAPiUDc=; b=WoraCo8mGcL+q+gctwxToCesqjBJiH2nVVtg0vp2D55v7ELKFLbQkoXR7zMs/OoGZG H3TZG/a+Y/agcWd1gVaGVY8Y2SZU/C6yg5Am6IMYklfCHMqZPbZ9va0uJt37Bm/GgD2l g9DCU7fintbBzqeW6tq/sdHeqP1mlmqVt6l6Kv/E9tarpHgvaj0DPA9Y+V9fh7kopo7Q V1jhsRZsriuxPmVSelPriYmAniAIP/8Pg/bMO41gRE4i/LvcaBlGSp+W0FwiqGgzsWfY ATL1ZbeRc19/dMi1VeL74Rgqos3wR9qz8xpv51uM8tpuHvepdd7C+hLg05DTKJeMYFT5 OL9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language; bh=OLrkghI5vGY69hQwuU2zgmvsiJavY+BSdqOLzAPiUDc=; b=ZpvbS+85ew4hvhflOLa5JtYSUKIYj8vplgODimqoMudrE9wlzMG3k2NrWK88KuulE/ OepVo7BgfHtjMkDPQDBedGPXomFAEkkjrFu8fdI0RcrHvIMtfLG2uTVR4VYwsfKZAxcy GCMT5JoFCIdJymDjaX6RrAF9G74qMuFPr3qoMzlJunljzW0eaL3BWYDSCAUB8jsrrqv0 ejUS+HjqDFMvWnvWI+D+3i17AxTmZiO/PsYVmBUFzEmA5Y2RZYsbN4NoLFvHVSwnUkUn rlpJzCpbJOIPFgPhmTzXBoIhreq4E57CQYTWix4genZoZ1WeZutgcD6IrZdzqdPyRBn7 jbCA== X-Gm-Message-State: AHPjjUgu6p2TQQQgQ4IQROs7qzfLIRcL8HNUQtjLIRMfDGvWdbqh9URY bges6T6f7v5bIh+6 X-Google-Smtp-Source: AOwi7QD60+cOS4qGkfqFF+i3xEGnsHLZgLN7OqJCGPS1pJND/q36JQiuuf+owdSXtjlv04a63Wkuqw== X-Received: by 10.25.209.202 with SMTP id i193mr3641060lfg.97.1505745509999; Mon, 18 Sep 2017 07:38:29 -0700 (PDT) Received: from [1.0.0.7] ([178.155.4.191]) by smtp.gmail.com with ESMTPSA id 19sm1874694ljs.34.2017.09.18.07.38.28 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 18 Sep 2017 07:38:29 -0700 (PDT) Subject: Re: Docbook 5.x To: =?UTF-8?Q?J=c3=bcrgen_Purtz?= , Peter Eisentraut Cc: pgsql-docs@postgresql.org References: <57179283.6080704@purtz.de> <572AD007.60900@gmail.com> <5752E599.2090505@gmail.com> <576d0623-a89c-b3de-e321-dc48a579ff1a@2ndquadrant.com> <4adecfc6-2f2e-2ff2-bfa3-58b7d397227b@gmail.com> <8f227b2a-5093-8d99-85da-ea00e18343f6@gmail.com> <449e34c4-9cc8-d17d-5ebe-be92b4c0a87a@gmail.com> <09b13d85-e259-2464-723a-467210264afe@2ndquadrant.com> <9e8cafe4-7cfd-59be-6856-172c15dc758f@2ndquadrant.com> From: Alexander Lakhin Message-ID: <11c0be48-6125-bbe1-1d02-6d61e889bd5e@gmail.com> Date: Mon, 18 Sep 2017 17:38:27 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/alternative; boundary="------------16F2A55CCEB4C93CEBF301A4" Content-Language: en-US List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-docs Precedence: bulk Sender: pgsql-docs-owner@postgresql.org This is a multi-part message in MIME format. --------------16F2A55CCEB4C93CEBF301A4 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Hello, 15.09.2017 21:54, Jürgen Purtz wrote: > On 15.09.2017 19:32, Peter Eisentraut wrote: >> On 9/8/17 08:30, Alexander Lakhin wrote: >>>> I have started working through these patches now. I have committed the >>>> escaping of < and & and will work through the rest slowly, to minimize >>>> disruptions to other development. >>> Great! >>> >>> I have rebased all the remaining patches and updated scripts for the >>> current master (see attachment). >> So, I've been looking at this profiling stuff, to replace the marked >> sections in the installation instructions. I found the overhead of that >> a bit too much for building the full documentation, so I have come up >> with the attached alternative solution. What do you think? Peter, can you show what performance drop you see with the profiling (e.g. for HTML)? I get the following numbers: 1. make html with profiling (import profile-chunk.xsl in stylesheet.xsl): 85.98user 0.76system 1:29.85elapsed 2. make html without profiling (import chunk.xsl in stylesheet.xsl): 77.36user 0.62system 1:21.28elapsed 3. Separate profiling (performed before making epub, as dbtoepub doesn't support profiling) 8.52user 0.22system 0:10.31elapsed So I get ~10% performance drop when making html. Are you concerned about the same overhead? I would choose some standard way to have separate content in the same file, but if the overhead is not acceptable, and we're not going to extend the profiling usage, then we need to invent something that will complicate XML-related processing (I think about translation but the other issues are possible too). > I'm not happy with the 'particular conversions'-part of > 'standalone-profile.xsl'. It applies subsequent modifications, which > are in not very intuitive to a reader, eg: > > > the documentation about client authentication and > libpq > > > This approach spreads the intended text over two very different files > (in this example: 'installation.xml' and 'standalone-profile.xsl'). > > My suggestion is to keep the source code in one file in the same > manner as with the SGML standalone-include/standalone-ignore > mechanism. A *generic* xsl file shall create the extended output > similar to 'standalone-profile.xsl'. > Jürgen, this approach implemented by applying profiling.xsl in Makefile (for make postgres.epub). (See Makefile in https://www.postgresql.org/message-id/attachment/54854/pg-doc.check.tar.bz2) Best regards, Alexander --------------16F2A55CCEB4C93CEBF301A4 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit
Hello,
15.09.2017 21:54, Jürgen Purtz wrote:
On 15.09.2017 19:32, Peter Eisentraut wrote:
On 9/8/17 08:30, Alexander Lakhin wrote:
I have started working through these patches now. I have committed the 
escaping of < and & and will work through the rest slowly, to minimize 
disruptions to other development.
Great!

I have rebased all the remaining patches and updated scripts for the 
current master (see attachment).
So, I've been looking at this profiling stuff, to replace the marked
sections in the installation instructions.  I found the overhead of that
a bit too much for building the full documentation, so I have come up
with the attached alternative solution.  What do you think?
Peter, can you show what performance drop you see with the profiling (e.g. for HTML)?
I get the following numbers:
1. make html with profiling (import profile-chunk.xsl in stylesheet.xsl):
85.98user 0.76system 1:29.85elapsed

2. make html without profiling (import chunk.xsl in stylesheet.xsl):
77.36user 0.62system 1:21.28elapsed

3. Separate profiling (performed before making epub, as dbtoepub doesn't support profiling)
8.52user 0.22system 0:10.31elapsed

So I get ~10% performance drop when making html. Are you concerned about the same overhead?
I would choose some standard way to have separate content in the same file, but if the overhead is not acceptable, and we're not going to extend the profiling usage, then we need to invent something that will complicate XML-related processing (I think about translation but the other issues are possible too).

I'm not happy with the 'particular conversions'-part of 'standalone-profile.xsl'. It applies subsequent modifications, which are in not very intuitive to a reader, eg:

<xsl:template match="phrase[@id='install-ldap-links']">
  <xsl:text>the documentation about client authentication and libpq</xsl:text>
</xsl:template>

This approach spreads the intended text over two very different files (in this example: 'installation.xml' and 'standalone-profile.xsl').

My suggestion is to keep the source code in one file in the same manner as with the SGML standalone-include/standalone-ignore mechanism. A generic xsl file shall create the extended output similar to 'standalone-profile.xsl'.

Jürgen, this approach implemented by applying profiling.xsl in Makefile (for make postgres.epub). (See Makefile in https://www.postgresql.org/message-id/attachment/54854/pg-doc.check.tar.bz2)

Best regards,
Alexander
--------------16F2A55CCEB4C93CEBF301A4--