diff options
author | ticktock35 <ticktock35@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358> | 2008-12-14 23:19:43 (EST) |
---|---|---|
committer | ticktock35 <ticktock35@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358> | 2008-12-14 23:19:43 (EST) |
commit | b67dc062ae9c689f0453d46bba47ceba832f676f (patch) | |
tree | 2e16ef82b4382eae29ff20080225971e32223aac /libopkg.c | |
parent | 3cc2f7cb4d7697df61e6212bbd658f186cdf2b34 (diff) |
opkg: apply "2-pkg-vec--Optimize-gross-inefficiency.patch" from OpenEmbedded
pkg_vec: Optimize gross inefficiency.
This module tries to implement *unique* vector (without duplicating objects),
and does this by iterating thru all already existing elements. Thus,
complexity of adding N elements was O(N^2). However, there're no grave reasons
to do uniqueness at all:
1. First of all, if feeds are correct, there won't be duplicates.
2. Then, even if there will be, there won't be serious problems like
segfaults.
3. Finally, for quite a few operations vectors is constructed from a
hashtable, thus uniqueness is guaranteed (which reduces possible cases of
non-uniqueness to values of Depends: and friends).
All an all, remove dup check, and make ipkg work order of magnitude faster on
a feed with few thousands of packages.
git-svn-id: http://opkg.googlecode.com/svn/trunk@18 e8e0d7a0-c8d9-11dd-a880-a1081c7ac358
Diffstat (limited to 'libopkg.c')
0 files changed, 0 insertions, 0 deletions