throws VoltCompilerException {
assert procedureName != null && ! procedureName.trim().isEmpty();
assert partitionInfo != null && ! partitionInfo.trim().isEmpty();
ProcedureDescriptor descriptor = m_procedureMap.get(procedureName);
if( descriptor == null) {
throw m_compiler.new VoltCompilerException(String.format(
"Partition in referencing an undefined procedure \"%s\"",
procedureName));
}
// need to re-instantiate as descriptor fields are final
if( descriptor.m_singleStmt == null) {
// the longer form costructor asserts on singleStatement
descriptor = m_compiler.new ProcedureDescriptor(
descriptor.m_authGroups,
descriptor.m_class,
partitionInfo,
descriptor.m_language,
descriptor.m_scriptImpl);
}
else {
descriptor = m_compiler.new ProcedureDescriptor(
descriptor.m_authGroups,
descriptor.m_className,
descriptor.m_singleStmt,
descriptor.m_joinOrder,
partitionInfo,