We're updating the issue view to help you get more done. 

RamCloud client object has memory leaks

Description

The following program:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include "RamCloud.h" using namespace RAMCloud; int main(int nargs, char* args[]) { printf("Coordinator Locator: %s\n", args[1]); for(int i = 0; i < 1000; i++) { printf("%d . .\n", i); RamCloud client(args[1]); client.createTable("test"); client.dropTable("test"); } return 0; }

Will slowly grow in size (about 70KB each with each iteration), until finally the program reports:

posix_memalign(4096, 537133056) failed: /home/jdellit/RAMCloud/src/Infiniband.h:353 (RegisteredBuffers)

And exits. On an rcXX machine in the cluster, this happened invariably on iteration 36.

I also noted that the first allocation of a RamCloud client object already had a memory footprint of ~650MB... Seems rather large for a single client object...

Environment

None

Status

Assignee

Unassigned

Reporter

Jonathan Ellithorpe

Labels

None

Priority

Major