-
Possible memory leak with enumerated table dump?
I have the following code fragment:
E:test>q KDB+ 3.6 2019.04.02 Copyright (C) 1993-2019 Kx Systems w32/ 8()core 4095MB xxxxxxxx xxxxxxxx xxx.xxx.xxx.xxx NONEXPIRE Welcome to kdb+ 32bit edition For support please see http://groups.google.com/d/forum/personal-kdbplus Tutorials can be found at http://code.kx.com To exit, type \ To remove this startup msg, edit q.q q)Syms:([A:`$/:"c"$(`int$"A")+til 26] NS:til 26) q)T:{ ([] A:`Syms$upper x?`1; B:-1+x?2.; C:x?1000) }; q)(persist:`:T.dat) set T 10000; q).Q.w[] used| 304208 heap| 67108864 peak| 67108864 wmax| 0 mmap| 0 mphy| 4294967295 syms| 668 symw| 24354 q)get persist A B C ----------------- L 0.1561184 314 .. q).Q.w[] used| 370736 heap| 67108864 peak| 67108864 wmax| 0 mmap| 0 mphy| 4294967295 syms| 668 symw| 24354 q)do[1000; get persist ]; q).Q.w[] used| 65906736 heap| 134217728 peak| 134217728 wmax| 0 mmap| 0 mphy| 4294967295 syms| 668 symw| 24354 q).Q.gc[] 0
As seen from above, the “used” space as reported by `Q.w[] keeps increasing every single time `:T.dat file was read.
Is this a sign of a memory leak somewhere caused by the enumerated column A in T.dat?
Log in to reply.