Heiko, Thanks for the explanation. I understood the idea of 1 being interned. Also I understood the globals vars having a reference in the internal dict.
I ran the "leaky" version of the program and yes...it showed a progressively increasing totalrefcount as below. Before 0 : 16579 After 0 : 16581 Before 1 : 16581 After 1 : 16583 Before 2 : 16583 After 2 : 16585 Before 3 : 16585 After 3 : 16587 Before 4 : 16587 After 4 : 16589 Before 5 : 16589 After 5 : 16591 Before 6 : 16591 After 6 : 16593 Before 7 : 16593 After 7 : 16595 Before 8 : 16595 After 8 : 16597 Before 9 : 16597 After 9 : 16599 Before 10 : 16599 After 10 : 16601 Before 11 : 16601 After 11 : 16603 Before 12 : 16603 After 12 : 16605 Before 13 : 16605 After 13 : 16607 Before 14 : 16607 After 14 : 16609 Before 15 : 16609 However, the 'non-leaky' one showed a funny trend ...it kept increasing the totalrefcount for five iterations (see 1 thru 5) and then dropped down by 5 ( See Before 5 : 16584 After 5 : 16580 ) suddenly and again increase as shown below. However, at the time when the script finsished execution, we were not too far from the starting totalrefcount (16584 from 16579), Before 0 : 16579 After 0 : 16580 Before 1 : 16580 After 1 : 16581 Before 2 : 16581 After 2 : 16582 Before 3 : 16582 After 3 : 16583 Before 4 : 16583 After 4 : 16584 Before 5 : 16584 After 5 : 16580 Before 6 : 16580 After 6 : 16581 Before 7 : 16581 After 7 : 16582 Before 8 : 16582 After 8 : 16583 Before 9 : 16583 After 9 : 16584 Before 10 : 16584 After 10 : 16580 Before 11 : 16580 After 11 : 16581 Before 12 : 16581 After 12 : 16582 Before 13 : 16582 After 13 : 16583 Before 14 : 16583 After 14 : 16584 Before 15 : 16584 What is the Mystery behind the increase and the subsequent drop ? Thanks. Raghavan V -- http://mail.python.org/mailman/listinfo/python-list