@Override public IDataSourceIndex<String, DataSourceId> findDataSourceIndex(String indexId, DataSourceId dataSourceId) throws AlgebricksException { DataSource source = findDataSource(dataSourceId); Dataset dataset = ((DatasetDataSource) source).getDataset(); Index secondaryIndex = getIndex(dataset.getDataverseName(), dataset.getDatasetName(), indexId); return (secondaryIndex != null) ? new DataSourceIndex(secondaryIndex, dataset.getDataverseName(), dataset.getDatasetName(), this) : null; }
Index searchIndex = ((DataSourceIndex) idx).getIndex(); int numberOfKeyFields = searchIndex.getKeyFieldNames().size();
: createFilterExpression(secondaryKeyVars, context.getOutputTypeEnvironment(currentTop), index.isOverridingKeyFieldTypes(), sourceLoc); DataSourceIndex dataSourceIndex = new DataSourceIndex(index, dataverseName, datasetName, mp); context.getOutputTypeEnvironment(assignCoordinates), forceFilter, sourceLoc); DataSourceIndex dataSourceIndex = new DataSourceIndex(index, dataverseName, datasetName, mp); indexUpdate = new IndexInsertDeleteUpsertOperator(dataSourceIndex, primaryIndexModificationOp.getPrimaryKeyExpressions(), secondaryExpressions, filterExpression,