'LookupTable empty' doubles its size

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

'LookupTable empty' doubles its size

S11001001
I'll do this backwards: fixed in
[hidden email]--2007-nocandy/smalltalk--backstage--2.2--patch-2,
available from http://csserver.evansville.edu/~sc87/{archive}/2007-nocandy

Sorry, this site won't produce HTTP directory listings.  patch-1 is the
patch I posted earlier with the accept*Node: changes, and base-0 is a
tag of patch-240.

This issue finally got me to put in place some ulimits for development:
I'm using ulimit -m 175000 and -v 250000 at the moment for gst.

st> |tst| tst := LookupTable new.
     100 timesRepeat: [tst basicSize printNl. tst empty]!
16

32

64

128

256

512

1024

...and so on; you can see where this is going.  (I get to basicSize =>
16M before ulimit steps in.)

After the fix:

st> |tst| tst := LookupTable new.
     100 timesRepeat: [tst basicSize printNl. tst empty]!
16

16

16

16

16

Furthermore, all tests pass, except for mutate.st as earlier reported.

2007-01-14  Stephen Compall  <[hidden email]>

 

         * kernel/HashedColl.st: Add copyEmpty, using primSize instead
of
         basicSize.  Fixes size-doubling for LookupTable.

--
Stephen Compall
http://scompall.nocandysw.com/blog


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk