Project

General

Profile

Actions

Bug #3495

closed

Space blow-up in cxx

Added by Michael Sweatt about 8 years ago. Updated about 8 years ago.

Status:
Abandoned
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
03/02/2016
Due date:
% Done:

0%

Estimated time:

Description

When building a large number of data packets,signing them, and getting the Names.
10M of Names uses 4G of memory.

We determined the cause being that the Names maintain references to their underlying Data, which can be reduced by calling wireEncode().

Discussed locally and determined intentional. Posting here for posterity sake.

Attached is a small code snippet that demonstrates the issue.


Files

memory_test.t.cpp (2.58 KB) memory_test.t.cpp little test Michael Sweatt, 03/02/2016 10:32 AM
Actions #1

Updated by Alex Afanasyev about 8 years ago

I will repeat that this "effect" is intentional.

We may want to provide an explicit method(s) to compress memory usage. Right now, you can simply call Name::wireEncode() which will make a separate memory allocation, releasing the previously referenced buffer.

Actions #2

Updated by Spyros Mastorakis about 8 years ago

Alex, we just filed the bug report, so that all of us are aware of this "property" in order to avoid unexpected side-effects in our applications (at least this is something that we were not aware of). Meaning no offense :-)

Feel free to make it a task or feature if you think that this would be more appropriate.

Actions #3

Updated by Alex Afanasyev about 8 years ago

  • Status changed from New to Abandoned

You may want to document it somewhere, but it is not a bug, nor it is a feature ("space blow up"). It is a side effect of the specific use case.

Actions

Also available in: Atom PDF