https://github.com/thinkaurelius/titan

sort by:
Revision Author Date Message Commit Date
ca60b36 Skip three cell-TTL-based tests as store dictates I added three new TitanGraphTest methods that require the storage backend to support cell TTL in 8f1520d60d79c8346a51258e5d96a7a107f26796, but I didn't do anything to ensure they only ran on stores that could support cell TTL. This caused spurious failures on some stores (e.g. InMemory). Adding early returns as is in similar cell-TTL-dependent test methods, even though I'm not enthusiastic about early return in test methods.q 02 May 2015, 03:06:16 UTC
df42713 Removing unnecessary assertion Per @mbroecheler: "@dalaro Please remove that assertion entirely. That's a stupid way to check that .system() in VertexQuery really does what it's supposed to. We have tests elsewhere to do that. This assertion will likely bite us again in the future." https://github.com/thinkaurelius/titan/commit/addb1559b976c172d8297361c7e9a9ef3d940749#commitcomment-10968686 29 April 2015, 18:24:22 UTC
a949c53 Weaken assertion in AbstractVertex.remove This assertion seems to fail whenever I have an existing TTL and want to change the TTL value. For example, this fails on titan09, which doesn't yet have any of the #981-related TTL tweaks immediately preceding this one in the git history. Remember to `export JAVA_OPTIONS='-ea'` before running gremlin.sh to enable assertions. g = TitanFactory.open('conf/titan-berkeleyje.properties') m = g.openManagement() m.setTTL(m.makeEdgeLabel('el').make(), 1, java.util.concurrent.TimeUnit.SECONDS) m.commit() m = g.openManagement() // Assertion fails on this setTTL invocation m.setTTL(m.getEdgeLabel('el'), 2, java.util.concurrent.TimeUnit.SECONDS) I think we never noticed this in practice because nobody runs with assertions enabled. I only stumbled across this by accident when working on new TTL tests in TitanGraphTest. I'm not sure if this commit is actually safe. Needs review. For #981 29 April 2015, 18:23:43 UTC
4fcb6cb Make ManagementSystem treat 0 TTL as immortality For #981 29 April 2015, 18:23:40 UTC
33e8aa8 Drop the TTL -1=immortal idea The assumption that 0 TTL means no TTL has been set is already several places in the code. For instance, I've seen it as a constant parameter given to a method that returns a TTL (used as the default value) and as a default return in the else block of an if statement. The code also does not respond well to negative or null values for at least two reasons: Durations must be nonnegative, so any leak of -1 into a Duration implementation throws an exception, and nulls can eventually lead to runtime exceptions when doing stuff like element.value("~ttl"). I think -1 expresses "no TTL" more naturally than 0, but not by a wide margin, and catching all the places where 0 is assumed looks quite tricky. Not worth it. For #981 29 April 2015, 18:23:31 UTC
f2011ef Make getTTL return null when TTL is undefined This is a follow-on to 7e3c03583e39678dd8bc610ad5ace0b761eacad5. It makes two of the three new tests introduced in that commit pass. For #981 29 April 2015, 18:23:26 UTC
8f1520d Add new set/getTTL tests, update interface javadoc New API behavior: * getTTL on a type without a TTL returns null * setTTL -1 in any unit removes the TTL on the affected type (if a TTL is currently set) All three of the new test methods in this commit currently fail. For #981 29 April 2015, 18:23:14 UTC
1430b4f Restore @BeforeClass hack for Cassandra+TP3 tests The TP3 test suites do not appear to have a analog to JUnit's standard @AfterClass and @BeforeClass. 897648e14112aa16e1e10b807caceb6ee37dd233 introduced a hack to start embedded Cassandra by overriding some ThriftGraphProvider logic that by design should be limited to constructing a configuration. 114886e46c4e5c8a1151cd202103db0673a2c228 commented that hack, but in discussion, it sounds like this was unintentional. Meanwhile, I've started a thread on dev@tp to figure out whether there's a better way to do @BeforeClass (or to do @AfterClass at all). 29 April 2015, 03:27:31 UTC
138a65e Merge pull request #1049 from thinkaurelius/issue_971 Rework TTL to avoid instanceof & casting 29 April 2015, 03:25:51 UTC
baf297d TTL: method rename, condition tweak, add comments The only substantial change in this commit is narrowing one condition in KCVSLogManager's constructor. Prior to this commit, the condition assumed that StoreFeatures.hasCellTTL implied !StoreFeatures.hasStoreTTL. This is true for all of the storage backends we have today, and even if it weren't true, it wouldn't result in incorrect operation, but it's still not necessarily true in general. Changed condition to check for StoreFeatures.hasCellTTL && !StorFeatures.hasStoreTTL, which was the original intent. The other changes are just cosmetic: * Added some comments * Removed a redundant precondition in TTLKCVSManager's constructor * Renamed TTLKCVSManager's supportsStoreTTL method to supportsAnyTTL. This is better because the method's return value is actually cellTTL || storeTTL... it's confusing to name that supportsStoreTTL when it really means "supportsCellOrStoreTTL". 28 April 2015, 23:01:24 UTC
c453d53 Updating TP version to 3.0.0.M8-incubating From 3.0.0.M8 (unreleased due to failed vote) to 3.0.0.M8-incubating (passed vote and released) 28 April 2015, 22:45:36 UTC
2c2a86d Merge branch 'titan09' into issue_971 Conflicts: titan-core/src/main/java/com/thinkaurelius/titan/graphdb/configuration/GraphDatabaseConfiguration.java 28 April 2015, 09:43:24 UTC
6e67cf5 Merge pull request #1047 from thinkaurelius/issue_488 Rewrite docs for index removal (and reindexing) 28 April 2015, 09:10:15 UTC
5207127 Merge branch 'titan09' into issue_488 Conflicts: titan-core/src/main/java/com/thinkaurelius/titan/graphdb/olap/job/IndexRemoveJob.java 28 April 2015, 09:08:26 UTC
48e5836 Merge pull request #1046 from thinkaurelius/issue_1040 Fix and refactor MapReduce index management 28 April 2015, 09:07:34 UTC
410a314 Updating index remove/reindex docs for #1040 The code examples for index removal and reindexing are up-to-date. They copy-paste and run cleanly in gremlin.sh with no customization. However, the prose is barely proofread. 28 April 2015, 08:44:06 UTC
e88771b Update Titan Gremlin plugin index mgmt imports Replacing MapReduceIndexJobs with MapReduceIndexManagement in the plugin's list of automatic imports 28 April 2015, 08:03:36 UTC
608527d Adding a new IndexRepairJob counter 28 April 2015, 08:02:51 UTC
e3108da Fix mixed index check in MR index job utility Prior to this commit, MR index management rejected mixed indices for both REINDEX and REMOVE_INDEX. Only the latter should be rejected. 28 April 2015, 08:01:58 UTC
3a6bf17 Fix leak of JobStatus into titan-hadoop-core This is a Hadoop 2 type and is not compatible between Hadoop 1/2. 28 April 2015, 05:57:14 UTC
e07f37d Add HBase-backend MapReduce re(move)index tests Similar to 008934d24585c9a65362d1b6147b0a68a7cee5f0, except the test cases in this commit are backed by HBase instead of Cassandra. 28 April 2015, 04:53:10 UTC
e1f1264 Narrow unnecessarily broad catch clause 28 April 2015, 04:52:07 UTC
ae0be27 Avoid a warning about an invalid config option GraphDatabaseConfiguration.getLocalConfiguration sets the "gremlin.graph" property to TitanFactory's full package and classname. MapReduceIndexManagement doesn't need this key, and it leads to a scary warning when copying the graph's local configuration into a Hadoop configuration object for use in an index management job. Removing this key to avoid the warning. 28 April 2015, 04:50:26 UTC
9b77325 Make CommonsConfiguration write Durations as ms CommonsConfiguration read Durations as unitless positive milliseconds expressed as a bare integer, but would serialize through the toString behavior used for the general case. The toString was something like "Duration [60 ms]", so it was asymmetrical. Special-casing Duration on the write path to make it symmetrical. This fixes an error when copying the graph's local configuration into a Hadoop configuration object prior to launching a MapReduce-based index management job. 28 April 2015, 04:48:20 UTC
632234a Create keyspace before getting ring (embedded Cas) This is similar to 539ad28b50ce2ce1447c4d955b7735fcfd2bad3e, except this commit is for embeddedcassandra and that commit was for cassandrathrift. 28 April 2015, 04:45:27 UTC
008934d Add MapReduce reindex & removeindex tests Added four integration tests of MapReduce index operations a Cassandra-backed Titan instance: * reindex an edge index * reindex a graph index * remove an edge index * remove a graph index Also added ExecutionException to the TitanManagement.IndexJobFuture.getIntermediateResult method to harmonize with the base Future interface, then changed the implementation to MR impl to throw one when the computation has failed. 28 April 2015, 04:41:53 UTC
b947f20 Disable local query optimizer if the empty graph is detected. https://github.com/thinkaurelius/titan/issues/1044 27 April 2015, 14:19:46 UTC
711d109 WIP revamp of MapReduce-based index management This commit has two main objectives: * Rewrite the user-facing API for configuring and submitting reindex or index-removal MapReduce jobs so that all MapReduce job functionality is hidden behind an `updateIndex` method with a signature identical to that in TitanManagement. Only the implementation differs. Compare with the old user-facing API that had bunch of different methods for each backend and job combination. * Unhardcode Backend.EDGESTORE_NAME in the HBase and Cassandra MapReduce InputFormats. This is now configurable. It defaults to EDGESTORE_NAME, but it can be set to other CF names when the job needs it (e.g. Backend.INDEXSTORE_NAME for an index-removal job on a graph index) 25 April 2015, 05:59:07 UTC
a9b3bd9 Merge remote-tracking branch 'origin/titan09' into titan09 25 April 2015, 03:06:04 UTC
c08eace Updated VertexIDAssignerTest case to account for some of the inaccuracies introduced by the randomized id allocation. Adjusted ScanTest to use 0 start buffer. 25 April 2015, 03:05:55 UTC
90b6054 Rolling back two lower bound changes since their impact isn't readily clear. For instance, the change in ConsistentKeyIDAuthority causes failure in VertexIDAssignerTest. 25 April 2015, 02:24:52 UTC
2aa4eeb Fixed other places where a staticbuffer filled with more than 1 zero was used as a lower bound to capture all keys or columns in a range query. 25 April 2015, 01:51:19 UTC
3c45be2 Log invalid index keys ERROR instead of DEBUG IndexRemoveJob.keyFilter should never see an invalid key in normal operation. 25 April 2015, 01:49:59 UTC
a457c6b Fixed bug in IndexRemoveJob. The issue was that a slicequery starting with 128 0s was used as the start slice in an attempt to get all columns. However, if the contents of the buffer are identical it compares the lengths. Hence, a staticbuffer with just a single 0 in it will be considered smaller and hence such index records werent' returned. 25 April 2015, 01:39:38 UTC
6243481 Refactored InMemoryGraphTest so that it can run tests that require reconfiguration via clopen(...) but only if clopen() happens on an empty graph. 25 April 2015, 01:37:58 UTC
6a19af9 Add failing test case of unique index removal Added a test to TitanGraphTest that fails when attempting to remove a unique composite graph index from the Graph of the Gods dataset. Making the index non-unique and changing nothing else causes the test to pass. 25 April 2015, 00:51:20 UTC
399fce2 Fixes test case to set the log name correctly 24 April 2015, 21:44:12 UTC
f0d425b Updated KCVSLogManager initialization so it doesn't produce exceptions when reading local key partitions. 24 April 2015, 21:26:10 UTC
0c291e1 Revert exception catch in IndexRemoveJob keyFilter This reverts commit 98f864b40c1970dce3f8a82e3fd16180343a50fd. 24 April 2015, 20:14:54 UTC
60c2479 Upgrade ES to 1.5.1 https://github.com/thinkaurelius/titan/issues/964 24 April 2015, 10:37:43 UTC
9bacf0f Change default directory for lucene index https://github.com/thinkaurelius/titan/issues/1020 24 April 2015, 10:35:45 UTC
c294cc7 Missed a couple of deprecations https://github.com/thinkaurelius/titan/issues/984 24 April 2015, 09:16:23 UTC
38fcc05 Merge pull request #1038 from BrynCooke/TITAN_1020 Added example config files for Lucene and Solr 24 April 2015, 09:02:46 UTC
c59e319 Added example config files for Lucene and Solr https://github.com/thinkaurelius/titan/issues/1020 24 April 2015, 09:01:23 UTC
a816cd0 Really allow empty rel type name in IndexRemoveJob This is the change I thought I was committing in 98f864b40c1970dce3f8a82e3fd16180343a50fd. I accidentally made a different fix in that commit. 24 April 2015, 01:54:16 UTC
539ad28 Allow reading local partition prior to opening DB CassandraThriftStoreManager didn't check that its own keyspace existed before attempting to read the ring for its own keyspace and return its local partitions. Changed the affected method to check for and create its keyspace if it does not exist prior to the ring read. 24 April 2015, 01:52:17 UTC
50e9307 WIP index repair/removal docs Blocked on possible bug in fulgora or IndexRemoveJob -- example code runs without errors but doesn't actually delete the index 24 April 2015, 01:45:41 UTC
98f864b Allow empty relation type name in IndexRemoveJob This is empty when removing a graph index. 24 April 2015, 01:00:36 UTC
ec3c761 Change two addVertex uses of "~label" to T.label There is a chance that calling addVertex("~label", "foo", ...) should be supported alongside calling addVertex(T.label, "foo"). The block of code just above the TINKERPOP-627-linked TODO comment in TitanBlueprintsTransaction.addVertex would be the place to start. For #1036 24 April 2015, 00:58:45 UTC
d704116 Merge pull request #1033 from BrynCooke/TITAN_984 Upgrade code to avoid deprecated APIs. 23 April 2015, 15:46:13 UTC
7b3de6c Upgrade code to avoid deprecated APIs. https://github.com/thinkaurelius/titan/issues/984 23 April 2015, 15:45:03 UTC
8fd473a Delete unused TTL-related config option 23 April 2015, 15:30:11 UTC
48159fb Merge pull request #1032 from BrynCooke/ISSUE_1031 Disable transaction cache for compute 23 April 2015, 11:13:56 UTC
7344c33 Disable transaction cache for compute https://github.com/thinkaurelius/titan/issues/1031 23 April 2015, 11:10:45 UTC
195eb1e Fixes #1012. 23 April 2015, 05:13:50 UTC
56d3275 Additional test coverage around partitioning. 23 April 2015, 00:55:53 UTC
a366afe Fixes #733. Added a partitioner that hashes a vertex property and uses that for partition assignment. Added test case to verify its working correctly. Extended existing partitioning test coverage. 23 April 2015, 00:25:09 UTC
3dc3f36 Typesafe heterogeneous storemetadata containers This makes StoreMetaData use the typesafe heterogeneous container pattern. This eliminates some typecasts. 23 April 2015, 00:23:01 UTC
b3a0fe8 Reworking TTL options to be like EntryMetaData EntryMetaData is still not a totally satisfactory model for this, since it relies on an EnumMap with values of various types, and the client code is ultimately responsible for typecasting those values. The point of this commit was just to unify the pattern used for entry and store metadata like TTL, rather than having two different patterns. 22 April 2015, 21:34:30 UTC
786b758 Fixing test cases and simplifying boundary checking logic in PartitionIDRange 22 April 2015, 21:34:05 UTC
7d9cc55 Fixed configuration related test case 22 April 2015, 20:39:50 UTC
d8a4cb3 Merge branch 'titan09' of https://github.com/thinkaurelius/titan into titan09 Conflicts: titan-core/src/main/java/com/thinkaurelius/titan/graphdb/configuration/GraphDatabaseConfiguration.java 22 April 2015, 20:37:21 UTC
05a7cff Fixes #956, Fixes #957, Fixes #1001. Refactors internal partition handling and adds test coverages to various aspects of id management. 22 April 2015, 20:31:58 UTC
d19a8f1 Merge branch 'titan09' of github.com:thinkaurelius/titan into titan09 Conflicts: titan-es/src/main/java/com/thinkaurelius/titan/diskstorage/es/ElasticSearchIndex.java 22 April 2015, 14:57:16 UTC
2af9b60 Merge pull request #994 from BrynCooke/Issue_593 Added support for different cardinality indexing in ES. 22 April 2015, 12:30:51 UTC
c1b95fc Added multi-cardinality indexing in ES. https://github.com/thinkaurelius/titan/issues/593 Also fix Lucene test failures 22 April 2015, 11:22:21 UTC
fb0fe86 Use only titan-core datatypes in ConfigOption This commit makes two tweaks to StandardSerializer: * Add serializer for ConflictAvoidanceMode enum (ordinal 57) * Replace serializer keyed by the StandardTimepoint datatype with the Timepoint interface it implements; tweak normalizeDataType method to treat incoming StandardTimepoint instances as though they were Timepoint This commit also tweaks existing ConfigOptions to either use a supported StandardSerializer type, or, in titan-es and titan-cassandra, to serialize a String and manually convert it back into an enum using ConfigOption.getEnumValue. ZeroDuration was deleted to simplify StandardSerializer. ZeroDuration.INSTANCE has been replaced by StandardDuration.ZERO. Having all implementations of Duration inside core be of concrete type StandardDuration simplifies things in StandardSerializer (no need for another hack like that for Timepoint described above, nor for general-case "find a known serializer for a compatible non-Object supertype" logic). For #1018 21 April 2015, 19:26:06 UTC
d17dd9b Merge pull request #1029 from BrynCooke/TITAN09_1022 Add a new config option for wait-searcher that defaults to false. 21 April 2015, 10:09:41 UTC
168fb44 Add a new config option for waitSearcher that defaults to false. Allows unit tests to run without race conditions and other users to run a maximum performance. https://github.com/thinkaurelius/titan/issues/1022 21 April 2015, 10:08:28 UTC
b63852a Refactor TTL handling in diskstorage This commit is a wash in terms of simplification: 169 lines removed, but still 165 added. Might not be worth it. It's also only barely tested (ran titan-cassandra but not titan-hbase tests). For #971 21 April 2015, 05:21:42 UTC
fd118c2 Remove inactive @After|BeforeClass in TP3 tests This is probably not the best way to fix it. Not sure if TP3 has an equivalent to @AfterClass... haven't found it yet. This commit changes the failure mode of several HBase tests. Instead of failing before any test methods even run due to neglecting to start HBase, the tests now start HBase and then fail substantial assertions. 21 April 2015, 05:17:47 UTC
a5d4669 Fixes #956 20 April 2015, 19:24:00 UTC
ebdfe6f Merge pull request #1023 from BrynCooke/TITAN_987 Upgrade to Solr5 20 April 2015, 13:20:08 UTC
164eb2b Upgrade to Solr 5 Update docs Update example config https://github.com/thinkaurelius/titan/issues/987 20 April 2015, 13:18:19 UTC
bdefb1f Fixes #859 18 April 2015, 03:07:27 UTC
867fb39 Introduces overwrite semantics for vertex properties. If a new property is added with cardinality single or set then it overwrites any existing ones without throwing an exception. If possible, it will try to avoid reading existing properties from the backend for better performance. Fixes #938. 18 April 2015, 02:49:46 UTC
9bb79d7 Add test case for #988 and #973. 18 April 2015, 02:00:34 UTC
aae1621 Updated test case 17 April 2015, 22:52:57 UTC
c2f7721 Fixes Features and how properties are attached to newly created vertices to fix test failures in TP3 StructureTest. 17 April 2015, 21:51:34 UTC
0da609c Fix issue introduced by https://github.com/thinkaurelius/titan/commit/e68efba52332c501cd4fbdde93c948709dbe040c where GeoGson serialisation support was overriding the default TitanIO. 17 April 2015, 20:05:55 UTC
99413e8 Added serializer for Mapping 17 April 2015, 15:17:29 UTC
e7e72c8 Grouping dependencies (no material change) 17 April 2015, 02:59:15 UTC
2a66aa0 Removed Kryo dependency from pom files 16 April 2015, 23:51:44 UTC
fd96050 Fixed a test case failure around Object serialization 16 April 2015, 23:49:02 UTC
6fc60a1 Removed Kryo serializer from the internal serialization engine and extended Titan's serializer to handle all serialization needs. This gives us greater flexibility and more control over the serializer which should make it easier to maintain backwards compatibility. However, this also constrains what kinds of data types Titan supports which might actually end up being a good thing for the user. Fixes #751. Fixes #955. 16 April 2015, 23:36:16 UTC
52edbb1 Added Lucene's NumericUtils (only the conversion methods) to Titan so we can use them in the serializer 15 April 2015, 22:18:34 UTC
38130d3 Fixes #860 which entailed a lot of refactoring of existing core and internal interfaces with changes throughout the codebase. 15 April 2015, 22:02:43 UTC
8f6404f Merge branch 'titan09' of https://github.com/thinkaurelius/titan into titan09 15 April 2015, 18:29:09 UTC
114886e Refactored TP3 test cases for Cassandra and added them for HBase. This is not yet tested. 15 April 2015, 18:20:10 UTC
b8b31e6 Merge pull request #1015 from BrynCooke/titan09 Groovy Compute tests now run against berkeley DB 15 April 2015, 14:53:25 UTC
ed08bb6 Groovy Compute tests nor run against berkeley DB (although there are many errors) 15 April 2015, 13:45:55 UTC
4bc583c Merge pull request #1014 from BrynCooke/TITAN_954 Added GeoJson serialization for graphson 15 April 2015, 10:20:29 UTC
e68efba Added GeoJson serialization for graphson https://github.com/thinkaurelius/titan/issues/954 15 April 2015, 10:19:34 UTC
43df5df Fixes #913 14 April 2015, 23:00:44 UTC
a6d4820 Enabled the configuration option INDEX_NAME_MAPPING by default. Fixes #770. 14 April 2015, 22:37:58 UTC
17e54ba FulgoraGraphComputer used to run the vertex program on the aggregated partitioned vertices in the workerIterationEnd method. After changing the execution semantics of that method, this was incorrect and is fixed by this commit. 14 April 2015, 22:08:04 UTC
d57d31a Merge pull request #1011 from BrynCooke/TITAN_1010 Try to fix race conditions in ES tests 14 April 2015, 18:44:04 UTC
1c0f0f6 https://github.com/thinkaurelius/titan/issues/1010 Try to separate out tests in to different clusters. Watch for ES shutdown as well as startup. 14 April 2015, 18:42:03 UTC
14dfdc9 Merge pull request #1009 from BrynCooke/titan09 Opt out of failing TP tests that are fixed in TP HEAD 14 April 2015, 13:17:29 UTC
4f70fa5 Opt out of failing TP tests that are fixed in HEAD 14 April 2015, 13:16:42 UTC
back to top