https://play.golang.org/p/e22ufH-T2M1

This is my sample data structure.

package main

import (
"fmt"
)

type MicroChkpt struct {
comprtype uint32
MicroChkptInfoMap map[uint32][]byte
}

type CallChkpt struct {
FullChkptData []byte
MicroChkptMap map[uint32]*MicroChkpt
ckey uint32
comprtype uint32
AuditInProgress bool
}

var CallChkptMap map[uint32]*CallChkpt

func main() {
fmt.Println("Hello, playground")
}

So its a nested map structure, 
CallChkptMap->MicroChkptMap->MicroChkptInfoMap
So i was expecting on deleting an entry from the top level map 
CallChkptMap, whole underlying memory used by nested maps would be 
reclaimed.

Its not happening till all entries are removed from the top level map( then 
only i see memory dipping), map has ongoing insert and delete operations 
and grows pretty big.
Any workarounds to reclaim the memory on deleting the specific entry please?


Should i go to the nested maps first, set them to nil and then delete the 
entry from the top level map?
Appreciate all your time and inputs.

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/9e34ddaf-6813-4a51-a49f-e1c8e86ce379%40googlegroups.com.

Reply via email to