// append an ascii-version of CallSP into cachewa.qryText_ void CallSP::generateCacheKey(CacheWA &cwa) const { RelExpr::generateCacheKey(cwa); cwa += " CallSPname:"; cwa += getRoutineName().getQualifiedNameAsAnsiString().data(); const ItemExpr *paramExpr = (getProcAllParamsTree() == NULL) ? getProcInputParamsVids().rebuildExprTree(ITM_ITEM_LIST) : getProcAllParamsTree(); if (paramExpr) { cwa += " arg:"; paramExpr->generateCacheKey(cwa); } }
// append an ascii-version of IsolatedScalarUDF into cachewa.qryText_ void IsolatedScalarUDF::generateCacheKey(CacheWA &cwa) const { NARoutine *routine = NULL; NARoutine *action = NULL; RelExpr::generateCacheKey(cwa); cwa += " UDFname:"; cwa += getRoutineName().getQualifiedNameAsAnsiString().data(); if (cwa.getPhase() >= CmpMain::BIND && getRoutineDesc() && (routine=getRoutineDesc()->getNARoutine()) != NULL) { char redefTime[40]; convertInt64ToAscii(routine->getRedefTime(), redefTime); cwa += " redef:"; cwa += redefTime; } if (getRoutineDesc() != NULL && getRoutineDesc()->isUUDFRoutine()) { cwa += " action:"; cwa += getRoutineDesc()->getActionNameAsGiven(); if (cwa.getPhase() >= CmpMain::BIND && getRoutineDesc() && (action=getRoutineDesc()->getActionNARoutine()) != NULL) { char redefTime[40]; convertInt64ToAscii(action->getRedefTime(), redefTime); cwa += " actredef:"; cwa += redefTime; } } const ItemExpr *paramExpr = (getProcAllParamsTree() == NULL) ? getProcInputParamsVids().rebuildExprTree(ITM_ITEM_LIST) : getProcAllParamsTree(); if (paramExpr) { cwa += " arg:("; paramExpr->generateCacheKey(cwa); cwa += ")"; } }
const NAString StmtDDLDropRoutine::displayLabel1() const { return NAString("Routine name: ") + getRoutineName(); }