[WM] Webmake performance
Oliver Strutynski
olistrut.gmx.net
Mon Nov 18 13:48:03 GMT 2002
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
This is pretty long posting, so bear with me...
On Monday 18 November 2002 15:56, Duncan Cameron wrote:
> What happens if you generate your site, and then generate it again
> without changing anything?
Even if I immediately regenerate the site, webmake still processes all files.
I am using a really simple webmake file now with no perl code at all...
> You can try running with the -D switch to try to find out what Webmake
> thinks that it is doing.
I used -L3. Retrying with -D right now... Does not add much...
It does not explicitly say that it opens the file, but gives a lot of
information that indicates that it is in fact processing these files and when
I added an additional dbg message to the particular open command and it
wasprinted once for every file.
Webmake _does_ say, that it has cached information about the file and does not
regenerate it and there are messages indicating that webmake unloads the
cached data, however I am certain that webmake opens and processes every
single file on each run.
So let's look at Main.pm: In depend_check the programm loops over the
dependencies and checks every single one of them. So I added some more
debugging output and apparently webmake does not find any dependencies for my
test files. This is fine (they have no external dependencies except for the
webmake file), but webmake assumes that it needs to rebuild the file if there
are no (known) dependencies. (after executing the loop, $foundadep is set to
0, as is $needrebuild). The log output however prints a dependency to the
file itself, so shouldn't there be at least one stored in the database? (Or
shouldn't webmake just remember that the file has no external dependencies?)
Oh, I am using webmake 2.2 if that makes any difference.
Here's what -L3 -D outputs for a single file (the line marked with ** is the
debugging output I added to the .pm source file). This output was generated
before I added more output to Main.pm:
16:17:21 debug: clearing "this.*" metadata for out/themen/t1/test1174.html
16:17:21 debug: dependency: OUT:themen/t1/test1174.html: simple.wmk
16:17:21 debug: dependency: page_template: simple.wmk
16:17:21 debug: parsing metadata in "page_template"
16:17:21 debug: set "__MainContentName" (transient)
16:17:21 debug: dependency: themen/t1/test1174.html:
file:templates/themen/t1/test1174.html
16:17:21 debug: ${themen/t1/test1174.html}: add ref from url
out/themen/t1/test1174.html
16:17:21 debug: caching metadata 'themen/t1/test1174.html.url' =
'out/themen/t1/test1174.html'
16:17:21 debug: updating last used on ${themen/t1/test1174.html}: 1205
** 16:17:21 debug: Opening file templates/themen/t1/test1174.html
16:17:21 debug: parsing metadata in "themen/t1/test1174.html"
16:17:21 debug: set metadata title == "this.title",
"themen/t1/test1174.html.title"
16:17:21 debug: caching metadata 'themen/t1/test1174.html.title' = 'Title
Document 1'
16:17:21 debug: set metadata section == "this.section",
"themen/t1/test1174.html.section"
16:17:21 debug: caching metadata 'themen/t1/test1174.html.section' =
'themen:t1'
16:17:21 debug: set metadata heading == "this.heading",
"themen/t1/test1174.html.heading"
16:17:21 debug: caching metadata 'themen/t1/test1174.html.heading' = 'Heading
Document 1'
16:17:21 debug: set metadata description == "this.description",
"themen/t1/test1174.html.description"
16:17:21 debug: caching metadata 'themen/t1/test1174.html.description' =
'Description Document 1'
16:17:21 debug: set "__MainContentName" (transient)
16:17:21 debug: updating last used on ${themen/t1/test1174.html}: 1205
16:17:21 debug: dependency: themen/t1/test1174.html.title:
file:templates/themen/t1/test1174.html
16:17:21 debug: dependency: themen/t1/test1174.html.heading:
file:templates/themen/t1/test1174.html
16:17:21 debug: not making (text has not changed): out/themen/t1/test1174.html
++ End of Output ++
- --
_____________________________________________________________________
Oliver Strutynski oliver.strutynski at in.tum.de
olistrut at gmx.net
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org
iD8DBQE92V87uUAlUEFqtKYRArGVAKDXkPX3Nq1x5wNKF+tL2/ky7nap1QCgx2ia
/gRx6d4aG0MxuPrYsgR2f5g=
=wmK3
-----END PGP SIGNATURE-----
More information about the Webmake-talk
mailing list