public Catalog loadSchema(HSQLInterface hsql,
                              DdlProceduresToLoad whichProcs,
                              String... ddlFilePaths) throws VoltCompilerException
    {
        m_catalog = new Catalog(); //
        m_catalog.execute("add / clusters cluster");
        Database db = initCatalogDatabase(m_catalog);
        List<VoltCompilerReader> ddlReaderList = DDLPathsToReaderList(ddlFilePaths);
        final VoltDDLElementTracker voltDdlTracker = new VoltDDLElementTracker(this);
        InMemoryJarfile jarOutput = new InMemoryJarfile();
        compileDatabase(db, hsql, voltDdlTracker, null, null, ddlReaderList, null, whichProcs, jarOutput);

        return m_catalog;
    }
public Catalog loadSchema ( HSQLInterface hsql , DdlProceduresToLoad whichProcs , String ... ddlFilePaths ) throws VoltCompilerException { m_catalog = new Catalog ( ) ; m_catalog . execute ( "add / clusters cluster" ) ; Database db = initCatalogDatabase ( m_catalog ) ; List < VoltCompilerReader > ddlReaderList = DDLPathsToReaderList ( ddlFilePaths ) ; final VoltDDLElementTracker voltDdlTracker = new VoltDDLElementTracker ( this ) ; InMemoryJarfile jarOutput = new InMemoryJarfile ( ) ; compileDatabase ( db , hsql , voltDdlTracker , null , null , ddlReaderList , null , whichProcs , jarOutput ) ; return m_catalog ; }
Simplified interface for loading a ddl file with full support for VoltDB
extensions (partitioning, procedures, export), but no support for "project file" input.
This is, at least initially, only a back door to create a fully functional catalog for
the purposes of planner unit testing.
@param hsql an interface to the hsql frontend, initialized and potentially reused by the caller.
@param whichProcs indicates which ddl-defined procedures to load: none, single-statement, or all
@param ddlFilePaths schema file paths
@throws VoltCompilerException