Professional Documents
Culture Documents
PersistConnectionPool|OracleBusinessIntelligenceOBIEE
PersistConnectionPool
ABOUT
AkashJain,OracleBI
BeforetellingyouaboutthePersistconnectionpoolconcept,Iwilltellyouabackgroundofwritingthispost.
Scenario:UserhadCreatedaReportwiththefilterbasedontheresultofanotherrequest.i.eAdvancedfilter
condition.
Consultantworkingwith
CognizantTechnology
SolutionsIndiaPvt.Ltd.PriortothisI
haveworkedforIBMandDeloitte.
Note:Thecontentofthisblogmightbe
presentinsomeotherblogbutthisis
mywayofpresentingit.Iam
documentingitforpeoplewhoare
newtoOBIEE.
RECENTPOSTS
RowstoColumnsConversionusing
AggregatorTransformation.
Result:ODBCError
nQSError:17001]
QueryStatus:QueryFailed:[nQSError:59044]UnabletocreatetableTT2OCI7GIAP2N676000020U0G0G3.
[nQSError:17001]OracleErrorcode:1031,message:ORA01031:insufficientprivileges
atOCIcallOCIStmtExecute:CREATETABLETT2OCI7GIAP2N676000020U0G0G3(column1
VARCHAR2(80CHAR)).
[nQSError:17011]SQLstatementexecutionfailed.
DifferencebetweenSYSDATEand
CURRENT_DATE
ColumnstoRowsconversionfrom
reportingperspective
ProductHierarchyinDW
SSLImplementationinOBIEE11g
Nowlookingintothiserror,fewthingscameintomymind
DistributeRepositoryFailedinRe
installingOBIEE11g
WhyCREATETABLEprivilegeerroriscomingintopicturewhenIamrunningthisreport,logicallyitshould
beaselectstatement.
Destinationpathtoolongwhile
copyingcataloginOBIEE11g
WhytablenameisstartingwithTTthattoowithsomeweirdname.
ThenIstarteddebuggingthisissueandItookfollowingsteps:
Scenario1:Ranthesimilarkindofreportinothersubjectareawhichwaspointingtosameconnectionpool.
OBIEEvsBusinessObject
CannotopenConsole,EMafterJava
UpdateinOBIEE11g
WhentouseRequestVariablein
OBIEE
Result:ODBCError
DeletingduplicaterecordsinOracle
Scenario2:Ranthesimilarkindofreportinothersubjectareapointingtodifferentconnectionpoolwith
differentdbuser/password.
WhentouseOBIEEandBIPublisher
Result:Correctresult.
AtthispointoftimeIhadconcludedthatthedbusermustnotbehavingCreateTableprivilegesandthat
mustbereasonforthisissue.
ButthenIthoughttomoveaheadwiththethirdscenario.
Scenario3:Ranthesimilarkindofreportinothersubjectareapointingtodifferentconnectionpoolwith
samedbuser/password.
http://obieebyakash.com/persistconnectionpool/
CATEGORIES
General(3)
InterviewQuestion(19)
Technical(59)
1/4
9/8/2015
PersistConnectionPool|OracleBusinessIntelligenceOBIEE
Result:Correctresult.
Somylogicfailed.CreateTableprivilegeisnottheonlyreasonforthisissue.Ifthatwouldhavebeenthe
casethenthirdscenariowouldhavefailed.
ThenIstartedcomparingtheconnectionpoolfeaturesofScenario1andScenario3andIfoundthatscenario
1wasusingPersistConnectionPool.
ARCHIVES
July2014(3)
June2014(6)
May2014(4)
April2014(2)
March2014(2)
January2013(1)
July2012(2)
June2012(4)
SothisisthebackgroundofwritingthispostandnowIamgonnatellyousomethingaboutPersistconnection
pool.
WhenyouusePersistconnectionpool,OBIServerstoresthesubqueryinatemporarytableandthenre
writestheoriginalsubqueryresultagainstthistable.ItreducesthedatamovementbetweentheOBIServer
andthedatabaseandsupportsunlimitedINlistvalues.Itisbasicallyusedtoimproveperformance.
TheOBIServerprocessesasubqueryinthefollowingprecedence:
April2011(2)
February2011(4)
January2011(3)
December2010(1)
August2010(5)
Pushesdownbothmainreportandsubquerytogethertothebackenddbifpossible.
Persistthesubqueryresultsintemptablesatthebackendifapersistentconnectionpoolisavailable.
ExecutethesubqueryandconstructanINlistwithreturnvalues
July2010(5)
June2010(6)
NowthesearesomeofthequestionrelatedtoPersistconnectionpool:
May2010(6)
Inwhatcircumstancestemporarytablesarecreated?
April2010(15)
TheyarecreatedaspartofasubqueryprocessingwheneverPersistconnectionpoolisdefinedinthe
repository.
April2009(5)
Shouldthetemporarytablepersistinthedborcleanedup?
Itshouldbecleaneduprightafterthereportiscompleted.ThetemptableshouldbedroppedwhenOBIPres.
Serverclosesthecursor.Ifthetableisnotdropped,onewayistouseAdmintool,viewonlinesessions,and
checkifthereportusingthesubqueryisstillopenedbyOBIPres.Server.ThetableisdroppedwhentheOBI
Pres.Serverfinishestherequestandcursorisclosed.
VISITS
79,415
Unique
Visitors
HowcanwedisablecompletelythecreationoftemporarytablesinourDatabase?
ClearoutthePersistconnectionpoolfromthephysicallayer.(FoundontheGeneraltaboftheDatabase
objectspropertiesdialogue).IfthereisnoPersistconnectionpoolsetforthedatabasethentemptable
creationwillnothappenunderanycircumstances.
Doestheusersetupforthepersistconnectionpoolneedtohavedatabasecreatetableprivilege?
Yes,theuserdefinedforthepersistconnectionpoolneedsprivilegestocreateDDLandDMLinthe
database.
FollowingexampleshowsthesamplephysicalqueryforPersistconnectionpool.
Repository:Star,SubjectArea:Test,Presentation:Test
+++Administrator:2c0000:2c0008:2010/07/0520:52:04
LogicalRequest(beforenavigation):
RqListdistinct
DEPT.DepartmentNameasc1GB,
EMP.EmployeeNameasc2GB
DetailFilter:DEPT.DepartmentNamein(['ACCOUNTING','OPERATIONS'])
http://obieebyakash.com/persistconnectionpool/
2/4
9/8/2015
PersistConnectionPool|OracleBusinessIntelligenceOBIEE
+++Administrator:2c0000:2c0008:2010/07/0520:52:04
CacheHitonquery:
MatchingQuery:SETVARIABLEQUERY_SRC_CD=ReportSELECTDepartment.DepartmentName
saw_0,Employee.EmployeeNamesaw_1,Employee.MGRsaw_2FROMTestORDERBYsaw_0,saw_1,
saw_2
Createdby:Akash
+++Administrator:2c0000:2c0008:2010/07/0520:52:04
SendingquerytodatabasenamedScott(id:CreateTableTransGateway):
CREATETABLETT0O6SAT33G336800000O0200002(column1VARCHAR2(14CHAR))
+++Administrator:2c0000:2c0008:2010/07/0520:52:04
SendingquerytodatabasenamedScott(id:<<1795>>):
WITH
SAWITH0AS(selectsum(T157.SAL)asc1,
T157.MGRasc2,
T157.ENAMEasc3,
T152.DNAMEasc4
from
DEPTT152,
EMPT157
where(T152.DEPTNO=T157.DEPTNOandT152.DNAMEin(selectcolumn1from
TT0O6SAT33G336800000O0200002))
groupbyT152.DNAME,T157.ENAME,T157.MGR)
selectdistinctSAWITH0.c4asc1,
SAWITH0.c3asc2,
SAWITH0.c2asc3,
SAWITH0.c2asc4,
SAWITH0.c1asc5
from
SAWITH0
orderbyc1,c2,c3
Conclusion:IfyouareusingPersistconnectionpool,thenthedbuserassociatedwiththeconnectionpool
musthaveCreateTableprivilege.AndthemomentIgaveCreateTableprivilegetotheuser,thereport
startedworkingfine.IfyouarenotusingPersistconnectionpool,thentemporarytablewillnotbecreatedand
CreateTableprivilegeisnotrequired.
2010
06 JUL
POSTEDBY
POSTEDIN
DISCUSSION
TAGS
AkashJain
Technical
0Comments
ORA01031:
insufficientprivileges
atOCIcall
OCIStmtExecute:
CREATETABLE,
PersistConnection
Pool,[nQSError:
59044]Unableto
createtableTT
LeaveaReply
Choosehowtoleaveyourcomment
Name*
Email*
Topreventcommentspam,youmustverifyyouownyouremailaddressusingMozillaPersona(Browserid)by
clickingthegreenSignInbutton.
http://obieebyakash.com/persistconnectionpool/
3/4
9/8/2015
PersistConnectionPool|OracleBusinessIntelligenceOBIEE
Comment
2015OracleBusinessIntelligenceOBIEE.Allrightsreserved.
http://obieebyakash.com/persistconnectionpool/
Poweredby
4/4