This Essbase discussion board is provided as a free service and dedicated to all the Essbase professionals out there!
  << Previous Topic | Next Topic >>Return to Index  

Essbase 11 JAPI and outline temp file spam

June 12 2012 at 3:56 PM
No score for this post
 
from IP address 67.180.152.108

(error handling omitted)

IEssbase japi = null;
IEssOlapServer server = null;
IEssCubeOutline outline = null;

japi = IEssbase.Home.create(IEssbase.JAPI_VERSION);
IEssDomain domain = japi.signOn(username, password, false, null, "embedded");

server = domain.getOlapServer(serverName);
server.connect();

outline = server.getApplication(appName).getCube(dbName).openOutline();

outline.close();
server.disconnect();


Every time this code is run, a temporary file is created on my Essbase 11 server in the temp folder (C:\Users\xxxxxxx\AppData\Local\Temp\2) called

hy$$$$$$.otl

where $$$$$$ varies from cube to cube and increments with every call.

My IEssbase.JAPI_VERSION reports 11.1.2 and it dumps Hyperion Provider Services - Release 11.1.2.1.00.353 in to the console at startup.

Testing now to see if they are cleared on a restart, but does anyone know if this is just a new maintenance feature of Essbase 11 or a bug of some kind (perhaps in my code)?



 
Scoring disabled. You must be logged in to score posts.Respond to this message   
AuthorReply


71.228.176.74

Re: Essbase 11 JAPI and outline temp file spam

No score for this post
June 13 2012, 9:45 AM 


Hi Zoltan,

I checked my temp directories and there were some temp otl files there, but there were from a few weeks ago. I then cleared them, ran Dodeca, and then opened a template that used an Essbase cube that did not have caching enabled (forcing an IEssCubeOutline to be used). There was not a temp otl file in the directory.

I don't know for sure, but my thought is that the tmp otl files are opened on the APS server machines (or locally if running embedded mode) and are discarded when IEssCubeOutline.close() is called. If, however, I was stepping code and just stopped it in the middle of execution, as I often do *when I am stepping code*, that perhaps .close() was never called.

Obviously, I would make sure the .close() method is in the finally block so that it gets executed even if an EssException is raised (and, of course, test the IEssCubeOutline object to make sure it isn't null before calling .close()).. (Zoltan: I assume you were doing this already; these last comments are aimed at users who may find this thread while researching similar issues.)

Tim

Tim Tow
Oracle ACE Director
Applied OLAP, Inc


 
Scoring disabled. You must be logged in to score posts.Respond to this message   


67.180.152.108

Should be closed...

No score for this post
June 13 2012, 12:29 PM 

Ya, closing was the first statement my finally block and it seems to produce the intended results.

if (outline != null) {
try { outline.close(); out.println("<p>outline closed</p>"); } catch (Exception ignored) { out.println("<p>1"+ignored.getMessage()+"</p>"); }
}

Odd, I'll have to play around more.

Apparently whatever is happening is only triggered in Essbase 11 as our Essbase 9 server doesn't have any temp OTLs lying around.

 
Scoring disabled. You must be logged in to score posts.Respond to this message   


67.180.152.108

Essbase thinks its closed

No score for this post
June 13 2012, 2:40 PM 

[Wed Jun 13 11:50:04 2012]Local/XXXXXXXX///7288/Info(1013210)
User [zgrose@Native Directory] set active on database [Capital]

[Wed Jun 13 11:50:04 2012]Local/XXXXXXXXX/Capital/zgrose@Native Directory/6888/Info(1013091)
Received Command [OpenOutlineEdit] from user [zgrose@Native Directory]

[Wed Jun 13 11:50:05 2012]Local/XXXXXXXXX/Capital/zgrose@Native Directory/852/Info(1013091)
Received Command [CloseOutlineEdit] from user [zgrose@Native Directory]

[Wed Jun 13 11:50:05 2012]Local/XXXXXXXXX///8016/Info(1013214)
Clear Active on User [zgrose@Native Directory] Instance [1]

The Edit in OpenOutlineEdit is interesting...

 
Scoring disabled. You must be logged in to score posts.Respond to this message   


76.126.160.225

The plot thickens

No score for this post
October 5 2012, 3:28 PM 

OK, something is not right here (and it could certainly be me).

Cannot open cube outline. Essbase Error(1022002): User [zgrose] Does Not Have Correct Access for Command [OpenOutlineEdit]

That is the result of:

server.getApplication("Sample").getCube("Basic").openOutline();

In 9.3.1 with a user set to Read access to Sample/Basic the above code is fine.
In 11.1.2 (just downloaded) with a user set to Read, the error is thrown.

Already have a SR open but anyone have any additional insight?

11:

[Fri Oct 05 13:12:55 2012]Local/Sample///5872/Info(1042059)
Connected from [::ffff:10.173.8.183]

[Fri Oct 05 13:12:55 2012]Local/Sample/Basic/zgrose/5872/Info(1013091)
Received Command [OpenOutlineEdit] from user [zgrose]

[Fri Oct 05 13:12:55 2012]Local/Sample/Basic/zgrose/5872/Error(1022002)
User [zgrose] Does Not Have Correct Access for Command [OpenOutlineEdit]


9:

[Fri Oct 05 13:26:38 2012]Local/Sample///Info(1013210)
User [zgrose] set active on database [Basic]

[Fri Oct 05 13:26:38 2012]Local/Sample/Basic/zgrose/Info(1013091)
Received Command [OpenOutlineEdit] from user [zgrose]

[Fri Oct 05 13:26:38 2012]Local/Sample/Basic/zgrose/Info(1013091)
Received Command [CloseOutlineEdit] from user [zgrose]

[Fri Oct 05 13:26:38 2012]Local/Sample///Info(1013214)
Clear Active on User [zgrose] Instance [1]





 
Scoring disabled. You must be logged in to score posts.Respond to this message   


64.134.233.68

Re: The plot thickens

No score for this post
October 5 2012, 4:26 PM 


I believe they changed the requirement for opening an outline in 11.1.2.1 (I *think* it was that version; our QA guys know for sure).. It now requires database designer privilege. We believe it may also have been carried into 11.1.1.4.

I would look at the readme's for the different versions to see if they talk about a change; I am at the airport and have low bandwidth, so I can't download prior versions..

Tim

Tim Tow
Oracle ACE Director
Applied OLAP, Inc

 
Scoring disabled. You must be logged in to score posts.Respond to this message   


76.126.160.225

Hrmph

No score for this post
October 5 2012, 4:48 PM 

Well that would be a very unfortunate change. Probably explains all the OTL spamming too.

 
Scoring disabled. You must be logged in to score posts.Respond to this message   
Anonymous

130.36.62.223

Re: Hrmph

No score for this post
October 5 2012, 4:53 PM 

Agree that it is a change/fix/feature sadly. We just discovered this same behavior a couple of weeks ago and had to flip to a system id to read the outline and then flip back to the user id within a VB app. Not what we wanted to do but it was better than giving all the users designer access through their group.

 
Scoring disabled. You must be logged in to score posts.Respond to this message   


76.126.160.225

Impersonation

No score for this post
October 5 2012, 5:07 PM 

Looks like service accounts are the long term way to go then. That way one can flip from privileged <->unprivileged access relatively easily in .signOn()


FWIW, it appears that

IEssIterator iter = server.getApplication("sample").getCube("Basic").getDimensions();

works for my main requirement of listing the dimensions. Looks to call GetDimInfo instead of OpenOutlineEdit.


[Fri Oct 05 15:03:59 2012]Local/Sample///6004/Info(1042059)
Connected from [::ffff:10.173.8.183]

[Fri Oct 05 15:03:59 2012]Local/Sample/Basic/zgrose/6004/Info(1013091)
Received Command [GetDimInfo] from user [zgrose]

[Fri Oct 05 15:03:59 2012]Local/Sample///2072/Info(1013214)
Clear Active on User [zgrose] Instance [1]

 
Scoring disabled. You must be logged in to score posts.Respond to this message   
Current Topic - Essbase 11 JAPI and outline temp file spam
  << Previous Topic | Next Topic >>Return to Index  

RSS feed for this forum - http://www.network54.com/Forum/58296?xml=rss. Please email hypess (at) gmail.com, if you have any questions/feedback/issues.