in reply to Strange memory growth

Which perl version are you using, which OS?
I don't see a specific problem with the code. It should have a use strict; at the beginning, though.
How long is a typical JSON string?
Can you create a sample input that will show memory increase? For example, instead of reading in the file, just loop over the same line a couple of 1000 times and watch memory consumption.
The problem the others are mentioning doesn't look like a problem to me since $jp falls out of scope after every loop iteration.
Memory stays the same for me if I run this 500,000 times on an example line.

edit: specifically, how many array elements does a typical structure have? my assumption was that you have many lines, but maybe your lines/JSON strings are very big?

Replies are listed 'Best First'.
Re^2: Strange memory growth
by Anonymous Monk on Feb 16, 2018 at 14:50 UTC
    I'm pretty sure that auto-vivification is the root-cause problem here, because a chain of hashrefs was used in a single expression, causing unwanted AV to occur from left to right. And I am also pretty sure that huck had the best answer.