avoid DESCRIBE processing when not doing a describe.

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7328 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Rolling back r7319 which broke UNION processing. 


git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7329 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Optimized GASEngine to use the B+Tree iterator without requiring the materialization of the ISPO tuples into an array.  This should avoid range counts, allocations of the arrays, and drive the index scan directly from the calling thread (rather than potentially using a producer/consumer pattern that is built into the AccessPath class for large key range scans).

Optimized potential hot spot in AbstractTripleStore.getSPORelation() using AtomicReference and double-checked locking pattern (was potentially contended on synchronized(this)), which could have had an impact on the GAS parallelism.

Made IStriterator implement ICloseableIterator.

See #629

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7330 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Removed redundant computation of the compact frontier.

See #629

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7331 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Removed redundent frontier compaction when using nthreads:=1.

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7332 8f7bc0f5-282e-0410-95e3-8d296e9bb460
test cases and generalization of ArrayIterator() (now accepts a slice of an array).

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7333 8f7bc0f5-282e-0410-95e3-8d296e9bb460
test cases and generalization of ArrayIterator() (now accepts a slice of an array).

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7334 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Major refactoring of the GAS implementation. This breaks apart the concept of the GASEngine (thread pool and resource management life cycle), the GASContext (execution context for a specific GAS program run), and the GASState (vertex state, edge state, the current frontier, and the scheduler for the new frontier).

I have not yet reimplemented the frontier scheduler to provide a compact frontier efficiently. That is next.

Tests pass.  Local performance looks good.

See #629 

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7335 8f7bc0f5-282e-0410-95e3-8d296e9bb460
javadoc fix

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7336 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Added a thread-local frontier scheduler. It maintains a per-thread scheduler. The per thread schedulrs are sorted in one thread each (but not in the scatter phase, which would take less latency since now we have two barriers instead of one). The per-thread ordered schedules are then combined using an n-way merge.

Unit tests pass. Parallel runs agree with original behavior.

See #629 

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7337 8f7bc0f5-282e-0410-95e3-8d296e9bb460
bug fix to apply the buffer mode,

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7338 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Made it possible to configure the scheduler (a bit of a hack).

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7339 8f7bc0f5-282e-0410-95e3-8d296e9bb460
Some more fiddling.  I have isolated 4 different scheduler implementations (single thread, concurrent hash set (jetty), concurrent hash map, and a thread-local version with a merge sort iterator). There is still overhead in the step to compact the frontier.  A lot of costs are also showing up in the index read operations, mainly in decoding the index pages.

I plan to provide a pure main memory object based implementation of the GAS API next.  This will let me focus on the costs without the indices. It will also provide a light weight implementation and an ongoing basis for comparing the disk-based and pure main memory implementations with the GPU based implementations.

See #629

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7340 8f7bc0f5-282e-0410-95e3-8d296e9bb460
new test case for trac 731 - using CBD describe mode, and an insert

git-svn-id: https://bigdata.svn.sourceforge.net/svnroot/bigdata/branches/BIGDATA_RELEASE_1_2_0@7341 8f7bc0f5-282e-0410-95e3-8d296e9bb460