After composer.removeScene objecs stays on screen

I am attaching all objects to sceneGroup and after scene change, I am calling out removeScene function, but objects are staying on screen and memory usages increases everytime scenes switches

-- HOME local composer = require( "composer" ) local widget = require( "widget" ) local scene = composer.newScene() local \_H = display.contentHeight local \_W = display.contentWidth --local chapter = require("app.chapter") local navbar = require("app.navbar") --1local book = require("app.book") function scene:create( event ) print("in create") -- composer.removeHidden(true) local sceneGroup = self.view --main = display.newGroup() scene.name = "app.home" local bg = display.newImageRect("res/home/background.png", \_W,\_H ) bg.x = \_W/2 bg.y = \_H/2 local navbar = widget.navbar("home", "home", "home", "subhome", scene) sceneGroup:insert(bg) -- sceneGroup:insert(navbar) local function onKeyEvent( event ) -- Print which key was pressed down/up local message = "Key '" .. event.keyName .. "' was pressed " .. event.phase print( message ) -- If the "back" key was pressed on Android or Windows Phone, prevent it from backing out of the app if ( event.keyName == "back" ) then local platformName = system.getInfo( "platformName" ) print("android") if ( platformName == "Android" ) or ( platformName == "WinPhone" ) then return true end end -- IMPORTANT! Return false to indicate that this app is NOT overriding the received key -- This lets the operating system execute its default handling of the key return false end local function handleButtonEvent( event ) if ( "ended" == event.phase ) then composer.gotoScene("app.book","fade") print(scene.name .. " scene name" ) composer.removeScene(scene.name) print("after removal") end end -- Create the widget local button1 = widget.newButton { left = \_W/2, top = \_H/2, id = "button1", label = "Default", onEvent = handleButtonEvent } Runtime:addEventListener( "key", onKeyEvent ) sceneGroup:insert(button1) --[[local function checkMemory() print("IS HOME STILL OPENED" ) end timer.performWithDelay( 2000, checkMemory, 0 )]] end function scene:show( event ) --local sceneGroup = self.view local phase = event.phase print("in show") if phase == "will" then -- Called when the scene is still off screen and is about to move on screen elseif phase == "did" then local sceneGroup = self.view -- Called when the scene is now on screen -- INSERT code here to make the scene come alive -- e.g. start timers, begin animation, play audio, etc end end function scene:destroy( event ) print("Destroy HOME SCENE") local sceneGroup = self.view sceneGroup:removeSelf() sceneGroup = nil -- Insert code here to clean up the scene. -- Example: remove display objects, save state, etc. end function scene:hide( event ) local sceneGroup = self.view local phase = event.phase if event.phase == "will" then -- Called when the scene is on screen and is about to move off screen -- INSERT code here to pause the scene -- e.g. stop timers, stop animation, unload sounds, etc.) elseif phase == "did" then -- Called when the scene is now off screen end end scene:addEventListener( "create", scene ) scene:addEventListener( "show", scene ) scene:addEventListener( "hide", scene ) scene:addEventListener( "destroy", scene ) return scene -- BOOK local composer = require( "composer" ) local widget = require( "widget" ) local scene = composer.newScene() local \_H = display.contentHeight local \_W = display.contentWidth local navbar = require("app.navbar") local bubbleMenu = require("app.bubbleMenu") function scene:create( event ) local sceneGroup = self.view scene.name = "app.book" bg = display.newImageRect("res/home/background.png", \_W,\_H ) bg.x = \_W/2 bg.y = \_H/2 local navbar = widget.navbar("BOOK", "BOOK", "top\_bar", "subhome", scene) -- closes navbars if users touch outside of navbar sceneGroup:insert(bg) -- sceneGroup:insert(navbar) -- local bubblemenu = widget.bubbleMenu() -- sceneGroup:insert(bubblemenu) -- handle backpress local function onKeyEvent( event ) if ( event.keyName == "back" and event.keyName == "up" ) then local platformName = system.getInfo( "platformName" ) print("android") if ( platformName == "Android" ) or ( platformName == "WinPhone" ) then composer.gotoScene( composer.getSceneName( "previous" ) , "fade") composer.removeScene(scene.name) end end return false end Runtime:addEventListener( "key", onKeyEvent ) local function handleButtonEvent( event ) if ( "ended" == event.phase ) then composer.gotoScene("app.home","fade") print(scene.name .. " scene name" ) composer.removeScene(scene.name) end end local button1 = widget.newButton { left = \_W/2, top = \_H/2 + 500, id = "button1", label = "Default", onEvent = handleButtonEvent } sceneGroup:insert(button1) end -- "scene:show()" function scene:show( event ) local sceneGroup = self.view local phase = event.phase if ( phase == "will" ) then -- Called when the scene is still off screen (but is about to come on screen). elseif ( phase == "did" ) then composer.removeHidden(true) -- Called when the scene is now on screen. -- Insert code here to make the scene come alive. -- Example: start timers, begin animation, play audio, etc. end end -- "scene:hide()" function scene:hide( event ) local sceneGroup = self.view local phase = event.phase if ( phase == "will" ) then -- Called when the scene is on screen (but is about to go off screen). -- Insert code here to "pause" the scene. -- Example: stop timers, stop animation, stop audio, etc. elseif ( phase == "did" ) then -- Called immediately after scene goes off screen. end end -- "scene:destroy()" function scene:destroy( event ) local sceneGroup = self.view print("destroy book scene") --sceneGroup:removeSelf() -- main:removeSelf() -- main = nil -- Called prior to the removal of scene's view ("sceneGroup"). -- Insert code here to clean up the scene. -- Example: remove display objects, save state, etc. end ------------------------------- -- Listener setup scene:addEventListener( "create", scene ) scene:addEventListener( "show", scene ) scene:addEventListener( "hide", scene ) scene:addEventListener( "destroy", scene ) -- ------------------------------------------------------------------------------- return scene