From: <btm...@us...> - 2010-11-10 00:40:36
|
Revision: 3923 http://bigdata.svn.sourceforge.net/bigdata/?rev=3923&view=rev Author: btmurphy Date: 2010-11-10 00:40:29 +0000 (Wed, 10 Nov 2010) Log Message: ----------- [branch dev-btm]: CHECKPOINT - phase 1 of callable executor (client service) smart proxy work. Includes fixes to issues identified by the rdf tests Modified Paths: -------------- branches/dev-btm/bigdata/src/java/com/bigdata/service/AbstractTransactionService.java branches/dev-btm/bigdata-jini/src/java/com/bigdata/quorum/QuorumPeerStateV0.java branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/lexicon/LexiconRelation.java branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/rules/RDFJoinNexus.java branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/store/LocalTripleStore.java branches/dev-btm/bigdata-sails/src/java/com/bigdata/rdf/sail/BigdataSail.java Modified: branches/dev-btm/bigdata/src/java/com/bigdata/service/AbstractTransactionService.java =================================================================== --- branches/dev-btm/bigdata/src/java/com/bigdata/service/AbstractTransactionService.java 2010-11-09 14:16:13 UTC (rev 3922) +++ branches/dev-btm/bigdata/src/java/com/bigdata/service/AbstractTransactionService.java 2010-11-10 00:40:29 UTC (rev 3923) @@ -317,7 +317,7 @@ * until existing transactions (both read-write and read-only) are complete * (either aborted or committed). */ - public void shutdown() { + public void shutdown0() { if(log.isInfoEnabled()) log.info(""); @@ -338,7 +338,8 @@ try { // wait for running transactions to complete. - awaitRunningTx(10/* logTimeout */, TimeUnit.MILLISECONDS); +//BTM - FOR_CLIENT_SERVICE awaitRunningTx(10/* logTimeout */, TimeUnit.MILLISECONDS); +awaitRunningTx(10L*1000L/* logTimeout */, TimeUnit.MILLISECONDS); } catch (InterruptedException ex) { Modified: branches/dev-btm/bigdata-jini/src/java/com/bigdata/quorum/QuorumPeerStateV0.java =================================================================== --- branches/dev-btm/bigdata-jini/src/java/com/bigdata/quorum/QuorumPeerStateV0.java 2010-11-09 14:16:13 UTC (rev 3922) +++ branches/dev-btm/bigdata-jini/src/java/com/bigdata/quorum/QuorumPeerStateV0.java 2010-11-10 00:40:29 UTC (rev 3923) @@ -55,7 +55,7 @@ private int initLimit = 5; private int syncLimit = 2; private int electionAlg = 3;//0=udp, 3=tcp - private int maxClientCnxns = 10; + private int maxClientCnxns = 0;//0 ==> unlimited, 10 is default private Map<Long, QuorumPeerData> peerDataMap = new TreeMap<Long, QuorumPeerData>();//order by peerId Modified: branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/lexicon/LexiconRelation.java =================================================================== --- branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/lexicon/LexiconRelation.java 2010-11-09 14:16:13 UTC (rev 3922) +++ branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/lexicon/LexiconRelation.java 2010-11-10 00:40:29 UTC (rev 3923) @@ -740,12 +740,31 @@ final ITextIndexer tmp; try { final Class<?> vfc = determineTextIndexerClass(); - final Method gi = vfc.getMethod("getInstance", - IIndexManager.class, String.class, Long.class, - Properties.class); - tmp = (ITextIndexer) gi.invoke(null/* object */, - getIndexManager(), getNamespace(), - getTimestamp(), getProperties()); +//BTM - PRE_CLIENT_SERVICE - BEGIN +//BTM - PRE_CLIENT_SERVICE final Method gi = vfc.getMethod("getInstance", +//BTM - PRE_CLIENT_SERVICE IIndexManager.class, String.class, Long.class, +//BTM - PRE_CLIENT_SERVICE Properties.class); +//BTM - PRE_CLIENT_SERVICE tmp = (ITextIndexer) gi.invoke(null/* object */, +//BTM - PRE_CLIENT_SERVICE getIndexManager(), getNamespace(), +//BTM - PRE_CLIENT_SERVICE getTimestamp(), getProperties()); + final Method gi = + vfc.getMethod("getInstance", + IIndexManager.class, + IConcurrencyManager.class, + IBigdataDiscoveryManagement.class, + String.class, + Long.class, + Properties.class); + tmp = + (ITextIndexer) gi.invoke + (null,//object + getIndexManager(), + getConcurrencyManager(), + getDiscoveryManager(), + getNamespace(), + getTimestamp(), + getProperties()); +//BTM - PRE_CLIENT_SERVICE - END if(tmp instanceof ILocatableResource<?>) { ((ILocatableResource<?>)tmp).init(); } Modified: branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/rules/RDFJoinNexus.java =================================================================== --- branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/rules/RDFJoinNexus.java 2010-11-09 14:16:13 UTC (rev 3922) +++ branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/rules/RDFJoinNexus.java 2010-11-10 00:40:29 UTC (rev 3923) @@ -502,12 +502,7 @@ if (indexManager == null) throw new IllegalArgumentException(); //BTM - FOR_CLIENT_SERVICE - BEGIN - if (concurrencyManager == null) { - throw new IllegalArgumentException("null concurrencyManager"); - } - if (discoveryManager == null) { - throw new IllegalArgumentException("null discoveryManager"); - } + //allowed to be null this.concurrencyManager = concurrencyManager; this.discoveryManager = discoveryManager; //BTM - FOR_CLIENT_SERVICE - END Modified: branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/store/LocalTripleStore.java =================================================================== --- branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/store/LocalTripleStore.java 2010-11-09 14:16:13 UTC (rev 3922) +++ branches/dev-btm/bigdata-rdf/src/java/com/bigdata/rdf/store/LocalTripleStore.java 2010-11-10 00:40:29 UTC (rev 3923) @@ -36,6 +36,10 @@ import com.bigdata.rdf.spo.SPORelation; import com.bigdata.relation.locator.DefaultResourceLocator; +//BTM - FOR_CLIENT_SERVICE +import com.bigdata.discovery.IBigdataDiscoveryManagement; +import com.bigdata.journal.IConcurrencyManager; + /** * A triple store based on the <em>bigdata</em> architecture. This class * offers extremely low latency for index operations. All indices are local @@ -152,7 +156,7 @@ //BTM - PRE_CLIENT_SERVICE - BEGIN //BTM - PRE_CLIENT_SERVICE - NOTE: the super class (AbstractLocalTripleStore --> AbstractTripleStore) now takes an //BTM - PRE_CLIENT_SERVICE - IConcurrencyManager and an IBigdataDiscoveryManagment instance for scale out. -//BTM - PRE_CLIENT_SERVICE - It's not clear whether passing null for those parameters will be a problem +//BTM - PRE_CLIENT_SERVICE - It's not clear whether passing null for those parameters will be a problem or //BTM - PRE_CLIENT_SERVICE - not. Need to monitor the tests for NullPointerExceptions. //BTM - PRE_CLIENT_SERVICE //BTM - PRE_CLIENT_SERVICE super(indexManager, namespace, timestamp, properties); @@ -166,6 +170,31 @@ } +//BTM - FOR_CLIENT_SERVICE - BEGIN +//BTM - FOR_CLIENT_SERVICE - NOTE: DefaultResourceLocator now uses reflection +//BTM - FOR_CLIENT_SERVICE - to invoke a constructor with the arguments +//BTM - FOR_CLIENT_SERVICE - specified below, rather than the original +//BTM - FOR_CLIENT_SERVICE - constructor shown above. This constructor +//BTM - FOR_CLIENT_SERVICE - was added to allow for that reflection case. + public LocalTripleStore + (final IIndexManager indexManager, + final IConcurrencyManager concurrencyManager, + final IBigdataDiscoveryManagement discoveryManager, + final String namespace, + final Long timestamp, + final Properties properties) + { + super(indexManager, + concurrencyManager, + discoveryManager, + namespace, + timestamp, + properties); + + store = (Journal) indexManager; + } +//BTM - FOR_CLIENT_SERVICE - END + /** * Create or re-open a triple store using a local embedded database. */ Modified: branches/dev-btm/bigdata-sails/src/java/com/bigdata/rdf/sail/BigdataSail.java =================================================================== --- branches/dev-btm/bigdata-sails/src/java/com/bigdata/rdf/sail/BigdataSail.java 2010-11-09 14:16:13 UTC (rev 3922) +++ branches/dev-btm/bigdata-sails/src/java/com/bigdata/rdf/sail/BigdataSail.java 2010-11-10 00:40:29 UTC (rev 3923) @@ -163,6 +163,8 @@ import com.bigdata.journal.TransactionService; //BTM - FOR_CLIENT_SERVICE +import com.bigdata.discovery.IBigdataDiscoveryManagement; +import com.bigdata.journal.IConcurrencyManager; import com.bigdata.relation.locator.IResourceLocator; /** * <p> @@ -1224,6 +1226,13 @@ .getTransactionManager().getTransactionService(); final String namespace = database.getNamespace(); + +//BTM - FOR_CLIENT_SERVICE - BEGIN + final IConcurrencyManager concurrencyManager = + database.getConcurrencyManager(); + final IBigdataDiscoveryManagement discoveryManager = + database.getDiscoveryManager(); +//BTM - FOR_CLIENT_SERVICE - END final Lock readLock = lock.readLock(); readLock.lock(); @@ -1255,11 +1264,12 @@ //BTM - FOR_CLIENT_SERVICE final AbstractTripleStore txView = (AbstractTripleStore) indexManager //BTM - FOR_CLIENT_SERVICE .getResourceLocator().locate(namespace, tx); IResourceLocator locator = indexManager.getResourceLocator(); +log.warn("\n*** concurrencyManager = "+concurrencyManager+", discoveryManager = "+discoveryManager+"\n"); final AbstractTripleStore txView = (AbstractTripleStore) locator.locate (indexManager, - database.getConcurrencyManager(), - database.getDiscoveryManager(), + concurrencyManager, + discoveryManager, namespace, tx); //BTM - FOR_CLIENT_SERVICE - END This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |