Jason Tackaberry wrote:
> On Mon, 2007-02-26 at 11:14 +0100, Benjamin Zores wrote:
>> That would be good from GeeXboX point of view (one big dependency
>> less) but from what i could remember, Tack told me libxmlé was
>> introduced cause 100x faster than python xml. If it takes 2hours to
>> parse xmltv fils with python xml than it might worth fixing libxml2
>> instead.
>
> It's true that when I rewrote the EPG parser to use libxml2 it was _way_
> faster (70 minutes down to 90 seconds).  But it wasn't just libxml2 I
> changed, it was also the core logic and the use of sqlite.

OK, my test fail. I stopped the test using minidom after 5 seconds
because the test was using about 600 MB RAM (and growing) while I only
have 512 MB. So minidom does not work. The SAX parser needs to parse
the defined dtd I don't have (for epgdata.com this is what I need).

So for kaa.epg libxml2 may still be the way to go. But I would prefer
other xml parser for other tasks. kaa.epg is the only module with huge
xml data. Why does the user need to install libxml2 for kaa.popcorn?
Right, because we need libxml2 to compile the cxml file. IMHO the
usage of the internal minidom would be much better in that case.

> I recently looked at the xml performance of some of the other parsers
> (like cElementTree, which the 1.x xmltv parser uses) were actually quite
> comparable to libxml2.

So maybe use cElementTree. I never tried that. Here is my suggestion:

1. Use minidom for the cxml stuff. It may be slower, but we don't want
   an extra dependency jsut to be able to install a module.

2. Use libxml2 or cElementTree for kaa.epg. Both are extra deps.
   Someone need to compare the two, not only speed but also how code
   written with that looks like.

3. kaa.metadata only deals with very small xml files (bins). So
   minidom could be ok. Or we choose the same as we use for
   kaa.epg. Same for kaa.canvas/candy.

IMHO we should make _one_ xml parser a requirement for Freevo. The
minidom is shipped with Python so it does not count. After trying to
create and manipulate a tree with libxml2 I vote for cElementTree
without even trying it. It can't be worse (famous last words).


Dischi

-- 
In some cultures what I do would be considered normal.

Attachment: pgps7ZU3X1ZDe.pgp
Description: PGP signature

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Freevo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-devel

Reply via email to