Repository: incubator-rya Updated Branches: refs/heads/develop 4ca2b241f -> db96c4584
RYA-28 adding additional life cycle dependencies for secondary indices Project: http://git-wip-us.apache.org/repos/asf/incubator-rya/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-rya/commit/db96c458 Tree: http://git-wip-us.apache.org/repos/asf/incubator-rya/tree/db96c458 Diff: http://git-wip-us.apache.org/repos/asf/incubator-rya/diff/db96c458 Branch: refs/heads/develop Commit: db96c4584815fec6b67f31db2753d12c1bb23f64 Parents: 4ca2b24 Author: pujav65 <[email protected]> Authored: Mon Jan 4 16:31:24 2016 -0500 Committer: pujav65 <[email protected]> Committed: Mon Jan 4 16:31:24 2016 -0500 ---------------------------------------------------------------------- .../java/mvm/rya/accumulo/AccumuloRyaDAO.java | 25 +++++++++++++++++++- .../accumulo/experimental/AccumuloIndexer.java | 13 ++++++---- 2 files changed, 33 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/db96c458/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/AccumuloRyaDAO.java ---------------------------------------------------------------------- diff --git a/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/AccumuloRyaDAO.java b/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/AccumuloRyaDAO.java index 8a6bd00..e251fd3 100644 --- a/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/AccumuloRyaDAO.java +++ b/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/AccumuloRyaDAO.java @@ -152,7 +152,9 @@ public class AccumuloRyaDAO implements RyaDAO<AccumuloRdfConfiguration>, RyaName bw_ns = mt_bw.getBatchWriter(tableLayoutStrategy.getNs()); for (AccumuloIndexer index : secondaryIndexers) { - index.setMultiTableBatchWriter(mt_bw); + index.setConnector(connector); + index.setMultiTableBatchWriter(mt_bw); + index.init(); } queryEngine = new AccumuloRyaQueryEngine(connector, conf); @@ -314,6 +316,13 @@ public class AccumuloRyaDAO implements RyaDAO<AccumuloRdfConfiguration>, RyaName } catch (Exception e) { throw new RyaDAOException(e); } + for(AccumuloIndexer indexer : this.secondaryIndexers) { + try { + indexer.destroy(); + } catch(Exception e) { + logger.warn("Failed to destroy indexer", e); + } + } } @Override @@ -390,6 +399,13 @@ public class AccumuloRyaDAO implements RyaDAO<AccumuloRdfConfiguration>, RyaName logger.error(e.getMessage()); } } + for(AccumuloIndexer indexer : this.secondaryIndexers) { + try { + indexer.purge(configuration); + } catch(Exception e) { + logger.error("Failed to purge indexer", e); + } + } } @Override @@ -408,6 +424,13 @@ public class AccumuloRyaDAO implements RyaDAO<AccumuloRdfConfiguration>, RyaName } } destroy(); + for(AccumuloIndexer indexer : this.secondaryIndexers) { + try { + indexer.dropAndDestroy(); + } catch(Exception e) { + logger.error("Failed to drop and destroy indexer", e); + } + } } public Connector getConnector() { http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/db96c458/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/experimental/AccumuloIndexer.java ---------------------------------------------------------------------- diff --git a/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/experimental/AccumuloIndexer.java b/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/experimental/AccumuloIndexer.java index 2329831..5581e08 100644 --- a/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/experimental/AccumuloIndexer.java +++ b/dao/accumulo.rya/src/main/java/mvm/rya/accumulo/experimental/AccumuloIndexer.java @@ -22,12 +22,17 @@ package mvm.rya.accumulo.experimental; import java.io.IOException; -import mvm.rya.api.persist.index.RyaSecondaryIndexer; - +import org.apache.accumulo.core.client.Connector; import org.apache.accumulo.core.client.MultiTableBatchWriter; +import mvm.rya.api.RdfCloudTripleStoreConfiguration; +import mvm.rya.api.persist.index.RyaSecondaryIndexer; + public interface AccumuloIndexer extends RyaSecondaryIndexer { - + public void init(); public void setMultiTableBatchWriter(MultiTableBatchWriter writer) throws IOException; - + public void setConnector(Connector connector); + public void destroy(); + public void purge(RdfCloudTripleStoreConfiguration configuration); + public void dropAndDestroy(); }
