Caching of numerical integrals

hi there,

i have a problem with caching of numerical integrals in roofit. i need to perform a fit using a 5D pdf, which takes about 20 minutes to integrate. when i save the whole thing to a workspace, w->Print() returns:

RooWorkspace(w) w contents

variables
---------
(Theta,li,li1,li2,phi1,phi2,ri,ri1,ri2,s,theta1,theta2)

p.d.f.s
-------
bkdg_PDF::pdf1[ g1l=li1 g1r=ri1 g2l=li2 g2r=ri2 gql=li gqr=ri s=s Th=Theta p1=phi1 p2=phi2 t1=theta1 t2=theta2 ] = 5.99824e-20

datasets
--------
RooDataSet::pdf1Data(Theta,phi1,phi2,theta1,theta2)

embedded precalculated expensive components
-------------------------------------------
uid = 0 key=pdf1_Int[Theta,phi1,phi2,theta1,theta2] value=RooDouble::0.000004 parameters=( li=-1.446 li1=-1.446 li2=-1.446 ri=-0.446 ri1=-0.446 ri2=-0.446 s=62500 )
uid = 1 key=pdf1_Int[phi1,phi2,theta1,theta2]_Norm[Theta,phi1,phi2,theta1,theta2] value=RooDouble::0.022984 parameters=( Theta=3.12588 li=-1.446 li1=-1.446 li2=-1.446 ri=-0.446 ri1=-0.446 ri2=-0.446 s=62500 )

so it seems it saved two numerical integrations. however, when i read the workspace into a new session and make plots using the following codes:

 TFile *f = new TFile("test_numintcache.root") ;

  RooWorkspace* w = (RooWorkspace*) f->Get("w") ;

  RooRealVar* Theta = w->var("Theta") ;

  RooAbsPdf* pdf1 = w->pdf("pdf1") ;
  RooAbsData* d = w->data("pdf1Data") ;

    TCanvas* c1 = new TCanvas("c1","c1",0,0,700,500);

  RooPlot* Thetaframe = Theta.frame();
  d.plotOn(Thetaframe);
  pdf1.plotOn(Thetaframe);
        Thetaframe->Draw();

roofit would actually perform the numerical integration all over again.

can someone please let me know what i am missing?? thanks in advance!!