Re: [Neo4j] Lucene index: Too many open files
Sounds like a bug to me. - Reply message - From: Axel Morgner a...@morgner.de Date: Wed, Mar 30, 2011 1:23 pm Subject: [Neo4j] Lucene index: Too many open files To: Neo4j user discussions user@lists.neo4j.org Hi, during stress tests, I got a Too many open files message (see detailed stack trace below). Server is a Debian Linux 2.6.26 x86_64 w/ 24 GB RAM, Core i7 which handles the load with ease. cat /proc/sys/fs/file-max 2399285 The parameter fs.file-max was already set very high, but I'll increase it further and see if it will happen again. fs.file-max = 6815744 fs.aio-max-nr = 1048576 Are there recommendations of linux kernel parameters? Or/and would you recommend other things to circumvent that, f.e. using multiple indexes instead of one? And it seems to me that finishing a Neo4j transaction will always trigger a LuceneTransaction.doCommit, even if there was no update on index (I try to avoid for the log nodes). Can this be switched off? Thanks and greetings Axel [1] Stack trace java.lang.RuntimeException: java.io.FileNotFoundException: /opt/structr/t5s/db/index/lucene/node/fulltextAllNodes/_ngl.fdx (Too many open files) at org.neo4j.index.impl.lucene.LuceneTransaction.doCommit(LuceneTransaction.java:272) at org.neo4j.kernel.impl.transaction.xaframework.XaTransaction.commit(XaTransaction.java:318) at org.neo4j.kernel.impl.transaction.xaframework.XaResourceManager.commit(XaResourceManager.java:446) at org.neo4j.kernel.impl.transaction.xaframework.XaResourceHelpImpl.commit(XaResourceHelpImpl.java:64) at org.neo4j.kernel.impl.transaction.TransactionImpl.doCommit(TransactionImpl.java:516) at org.neo4j.kernel.impl.transaction.TxManager.commit(TxManager.java:621) at org.neo4j.kernel.impl.transaction.TxManager.commit(TxManager.java:584) at org.neo4j.kernel.impl.transaction.TransactionImpl.commit(TransactionImpl.java:104) at org.neo4j.kernel.TopLevelTransaction.finish(TopLevelTransaction.java:85) at org.structr.core.node.TransactionCommand.execute(TransactionCommand.java:37) at org.structr.core.entity.AbstractNode.commit(AbstractNode.java:1048) at org.structr.core.log.LogService.flushQueue(LogService.java:101) at org.structr.core.log.LogService.run(LogService.java:73) Caused by: java.io.FileNotFoundException: /opt/structr/t5s/db/index/lucene/node/fulltextAllNodes/_ngl.fdx (Too many open files) at java.io.RandomAccessFile.open(Native Method) at java.io.RandomAccessFile.init(RandomAccessFile.java:233) at org.apache.lucene.store.SimpleFSDirectory$SimpleFSIndexOutput.init(SimpleFSDirectory.java:180) at org.apache.lucene.store.NIOFSDirectory.createOutput(NIOFSDirectory.java:74) at org.apache.lucene.index.FieldsWriter.init(FieldsWriter.java:86) at ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] New index framework questions...
Thanks. In your example, how would you add the profession key to a fulltext index? Would it also be put through the analyzer? - Reply message - From: Mattias Persson matt...@neotechnology.com Date: Thu, Mar 17, 2011 4:50 am Subject: [Neo4j] New index framework questions... To: Neo4j user discussions user@lists.neo4j.org 2011/3/16 Rick Bullotta rick.bullo...@burningskysoftware.com Hi, all. Looking at the documentation for the new index framework in the Wiki at: http://wiki.neo4j.org/content/Index_Framework, it isn't all that clear how fulltext queries are to be executed (what's the key name?), how they can be sorted (can you sort by score?), etc. Anders is working on that documentation and will arrive any day now. But until then I could outline some information here: So, there are two #query methods, one with and one w/o key. The one with the key parses the query you enter, assuming that everything is about that property key, f.ex if you've added: index.add( node, name, Mattias Persson ); to a fulltext index and then query (remember that fulltext index lower-cases everything by default): index.query( name, matt* ); // or index.query( name, matt* OR persson ); it will query for matt* (or matt* OR persson) values for the name property. Using the other method you can do the same thing: index.query( name:matt* ); index.query( name:matt* OR name:persson ); _but_ you can also query stuff from different property keys in one query, making compound queries possible, like: index.query( name:matt* AND profession:hacker ); Can anyone shed any light on how all this stuff works in the context of fulltext? Definitely some more examples/documentation would be very helpful. The query methods are also available for exact indexes. The difference between fulltext and exact is the way the added values are tokenized. The exact index doesn't do any tokenization, just puts the values as one value, whereas fulltext index tokenizes the added values into individual words and indexes those separately. Thanks, Rick ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user -- Mattias Persson, [matt...@neotechnology.com] Hacker, Neo Technology www.neotechnology.com ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Neoclipse Wish List
Hi, Craig. Thanks for the info. I've tried to deselect relationships but the checkboxes seem to be disabled. Like the idea of being able to specify a traversal. Loading and saving these various filtered views would also be helpful I think. Cheers, Rick - Reply message - From: Craig Taverner cr...@amanzi.com Date: Sat, Mar 5, 2011 6:23 pm Subject: [Neo4j] Neoclipse Wish List To: Neo4j user discussions user@lists.neo4j.org You can filter the number of nodes in the preferences settings (click the gear icon on the top left, and then click neo4j, and change maximum number of nodes). You can filter the relationships by types in the relationships view, deselect the types (also by incoming/outgoing). But as far as I know there is not filter on properties of nodes or relationships. Should be easy to add though. My wish list includes: - Menu of possible alternative roots (places in the database to jump directly to, possible based on a lucene query). - List of existing lucene indices available to query - visualize sub-graph not by a fixed depth, but by a traversal query (possibly using the syntax of the REST API, since that is dynamically interpreted) On Sat, Mar 5, 2011 at 10:38 PM, Rick Bullotta rick.bullo...@burningskysoftware.com wrote: Neoclipse is an awesome tool, but here are a few items that would greatly increase the utility and usability: 1) Provide a limit on the # of nodes/relationships that are displayed (and a warning that additional nodes and relationships were not shown) 2) Provide display filters based on node and/or relationship property values and relationship types I think these would greatly improve the situation when very large or complex graphs are involved, since now the visualizations become far too busy to do anything. Thoughts? Rick ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Onlineback up Error on 1.3M02
Lots of things can be very different on Windows! I definitely encourage the neo team to run its tests on both Linux and Windows, to help uncover any platform specific issues. - Reply message - From: Brendan Cheng ccp...@gmail.com Date: Tue, Feb 15, 2011 4:57 am Subject: [Neo4j] Onlineback up Error on 1.3M02 To: User@lists.neo4j.org Hi Mattias, I followed excatly like yours but still get the error. I just wonder if you have try the 1.3M02 on Windows but I guess there shouldn't be any difference. I noticed one thing that in your 1.3M02 built doesn't include library neo4j-index-XXX.jar. Any reason? Best Brendan Message: 5 Date: Tue, 15 Feb 2011 08:52:28 +0100 From: Mattias Persson matt...@neotechnology.com Subject: Re: [Neo4j] Onlineback up Error on 1.3M02 To: Neo4j user discussions user@lists.neo4j.org Message-ID: AANLkTinYUo9LNaa=djrxxtd+ayea_uu462scakjtv...@mail.gmail.com Content-Type: text/plain; charset=UTF-8 2011/2/14 Brendan Cheng ccp...@gmail.com Thanks for the advice but I still get an exception I added enable_online_backup = true to neo4j-server.properties but still getting run: Tue Feb 15 01:30:58 CST 2011: Client connected to localhost:6362 Tue Feb 15 01:30:58 CST 2011: Opened a new channel to localhost/ 127.0.0.1:6362 2011/2/15 01:31:18 itags.Sync.SyncData main : null org.neo4j.com.ComException: org.neo4j.com.ComException: org.jboss.netty.handler.queue.BlockingReadTimeoutException at org.neo4j.com.Client.sendRequest(Client.java:183) at org.neo4j.com.backup.BackupClient.fullBackup(BackupClient.java:42) at org.neo4j.com.backup.OnlineBackup.full(OnlineBackup.java:67) at itags.Sync.SyncData.fullThenIncremental(SyncData.java:46) at itags.Sync.SyncData.main(SyncData.java:233) Caused by: org.neo4j.com.ComException: org.jboss.netty.handler.queue.BlockingReadTimeoutException at org.neo4j.com.DechunkingChannelBuffer.readNext(DechunkingChannelBuffer.java:61) at org.neo4j.com.Client$2.readNext(Client.java:155) at org.neo4j.com.DechunkingChannelBuffer.readNextChunk(DechunkingChannelBuffer.java:79) at org.neo4j.com.DechunkingChannelBuffer.init(DechunkingChannelBuffer.java:50) at org.neo4j.com.Client$2.init(Client.java:151) at org.neo4j.com.Client.sendRequest(Client.java:150) ... 4 more Caused by: org.jboss.netty.handler.queue.BlockingReadTimeoutException at org.jboss.netty.handler.queue.BlockingReadHandler.readEvent(BlockingReadHandler.java:236) at org.jboss.netty.handler.queue.BlockingReadHandler.read(BlockingReadHandler.java:167) at org.neo4j.com.DechunkingChannelBuffer.readNext(DechunkingChannelBuffer.java:57) ... 9 more any idea? ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] embedded vs standalone server
I can help with some compression and performance ideas. When we control both ends of the pipe we can do some great optimizations. Avoid serialization of any kind at all costs, stream binary tokens with protocol markers, and we can make it crazy fast. - Reply message - From: Marko Rodriguez okramma...@gmail.com Date: Tue, Feb 15, 2011 7:03 pm Subject: [Neo4j] embedded vs standalone server To: Neo4j user discussions user@lists.neo4j.org Hey, Me again. Questions: 1. Will your GraphDatabaseService REST implementation support transactions? - If so, how will that look HTTP-wise (back-and-forth tokens?) - RexsterGraph only implements IndexableGraph (thus, AUTOMATIC transactions only -- i.e. commit for every manipulation) 2. Do you have any thoughts on how to make such things faster? JSON compression? 3. How will you deal with Iterator paging? - RexsterGraph has a parameter to allow X results to be pulled through an Iterator? at a time. (currently hardcoded to 100). Do you have anything more clever? - https://github.com/tinkerpop/blueprints/blob/master/src/main/java/com/tinkerpop/blueprints/pgm/impls/rexster/util/RexsterElementSequence.java Thanks, Marko. http://markorodriguez.com On Feb 15, 2011, at 4:25 PM, Marko Rodriguez wrote: Hi, I'm in the process of writing a Java Rest Client that will be a drop-in replacement for the GraphDatabaseService API. If you'd like to give it a try, you can find it at: http://github.com/jexp/neo4j-java-rest-binding I'd be very interested in your feedback. Huh. I did something similar for Rexster (http://rexster.tinkerpop.com). Basically, a Rexster--Blueprints. Thus, you can do all your standard Java/Gremlin/etc. code over REST to the remote server. https://github.com/tinkerpop/blueprints/wiki/Rexster-Implementation Its slow of course, but cool and handy when checking data at a remote location. See ya, Marko. http://markorodriguez.com ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] GSoC ideas?
Neo running on app engine would be an interesting project... - Reply message - From: Peter Neubauer peter.neuba...@neotechnology.com Date: Tue, Feb 8, 2011 1:35 am Subject: [Neo4j] GSoC ideas? To: Neo4j user discussions user@lists.neo4j.org, neo4jrb neo4...@googlegroups.com, General OPS4J gene...@lists.ops4j.org Hi all, this years Google Summer of Code is coming up, and we would be very delighted to support a couple of students with graphy interests during that one. Neo4j is no mentoring organization per se, but we can always take contact with some who are. I have started a Wiki page in order to collect ideas, feel free to answer this mail with ideas and I will add them to the page, or just fill them in yourself! http://wiki.neo4j.org/content/Google_Summer_of_Code_Ideas May the source be with you! /peter ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] [SPAM] Re: Neoclipse Remote access
Same here, on neo 1.2 on Windows. - Reply message - From: Kalin Wilson Development d...@kalinwilson.com Date: Tue, Jan 11, 2011 8:51 am Subject: [SPAM] Re: [Neo4j] Neoclipse Remote access To: Neo4j user discussions user@lists.neo4j.org Thanks Anders, I changed the connection mode in Neoclipse to read only embedded but I still can't have both clients attached at the same time. I get the typical lock error message. I'll try to troubleshoot it in more detail and let you know what I'm seeing. Kalin On Jan 10, 2011, at 6:20 AM, Anders Nawroth wrote: Hi! I built Neoclipse from source against the 1.2 jars. I'd like to use it while debugging an app using an embedded DB. When I connect with the remote option, I still can't access the DB if my app has the DB open. Will that be resolved or is it supported now? This should work. Note that for now, there can only be one remote client connected at a time. So any old instance that didn't get shut down may cause problems. I'd suggest using the read-only mode, it's much more stable. Also, if I connect to the DB with Neoclipse and stop/disconnect (click the square icon), the DB is not released and my app cannot connect when it starts. I have to quit Neoclipse to release the DB. Kind of a pain to have to quite either app to use the other, but I'm not in the mood to switch to the REST API. I couldn't reproduce this problem, maybe you could give some more details? Will I run into the same issue when backing up the DB? I understand from the docs that I can run a process within my app against the embedded DB to back it up, but will I be able to have another app/script run to back it up while my main app is using it? Onlinebackup should be executed from inside your application and shouldn't be a problem. It's also possible to perform backup by transferring the logical logs - I'm not sure about the details in this case, maybe someone else could chime in here? BTW, I just updated the Neoclipse source code to use Neo4j 1.2. /anders ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Big index solutions?
That should fit in RAM just fine, except for the effect of the string block/page size probably. What about a btree backed by neo relationships? Not fast enough? - Reply message - From: Peter Neubauer peter.neuba...@neotechnology.com Date: Mon, Dec 20, 2010 3:54 pm Subject: [Neo4j] Big index solutions? To: Neo4j user discussions user@lists.neo4j.org Hi folks, I wonder if any of you has seen a fast exact index solution that works for the batchinserter (FAST) and over big indexes (like 100M strings of length 20characters) that don't fit in RAM. Lucene is unable to cache such indexes and gets slow. Does anybody have experiences with other reverse lookup solutions like Berkeley DB, Ehcache or others? Would be great to combine them with the batchinserter to be able to fast insert big edge-lists with node-index-lookups into Neo4j ... Cheers, /peter neubauer GTalk: neubauer.peter Skype peter.neubauer Phone +46 704 106975 LinkedIn http://www.linkedin.com/in/neubauer Twitter http://twitter.com/peterneubauer http://www.neo4j.org - Your high performance graph database. http://www.thoughtmade.com - Scandinavia's coolest Bring-a-Thing party. ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] [SPAM] Re: Performance benchmarks of RES T API vs embedded Neo4J
Everything. ;-) Seriously though, it would good to measure small and large sets of node inserts and deletes, with varying numbers and types of properties and relationships, as well as a spectrum of queries/traversals, etc. - Reply message - From: Alex Averbuch alex.averb...@gmail.com Date: Sat, Dec 4, 2010 9:50 am Subject: [SPAM] Re: [Neo4j] Performance benchmarks of REST API vs embedded Neo4J To: Neo4j user discussions user@lists.neo4j.org Hi Rick, You could get a ballpark comparison by using Blueprintshttps://github.com/tinkerpop/blueprints, and comparing the performance of Neo4jGraphhttps://github.com/tinkerpop/blueprints/tree/master/src/main/java/com/tinkerpop/blueprints/pgm/impls/neo4j/ with the performance of RexsterGraphhttps://github.com/tinkerpop/blueprints/blob/master/src/main/java/com/tinkerpop/blueprints/pgm/impls/rexster/RexsterGraph.java .. Rexster https://github.com/tinkerpop/rexster is a RESTful graph shell that exposes any Blueprints graph through a standalone HTTP server Using Neo4jGraph is straight forward. For a discussion on using RexsterGraph go herehttp://groups.google.com/group/gremlin-users/browse_thread/thread/aa9ad740c8fed156/9a7510a3e36f1d72?lnk=gstq=rexster#9a7510a3e36f1d72 .. If you know the type of graph operations that you would like to test, GraphDB-Bench https://github.com/tinkerpop/graphdb-bench can be used to compare performance of the two Graph implementations (Embedded vs REST). What type of graph operations would you like to test? I might be able to help by setting up the specific GraphDB-Bench benchmark for you. Cheers, Alex On Sat, Dec 4, 2010 at 3:22 PM, Rick Bullotta rick.bullo...@burningskysoftware.com wrote: Has anyone done any rough performance comparisons of the two approaches? I have to think we're looking at 1 or 2 orders of magnitude difference, but would like to know if there is any hard data yet. ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] [SPAM] Re: [SPAM] Re: Datetimes in Neo4j REST Server
+1. - Reply message - From: Javier de la Rosa ver...@gmail.com Date: Thu, Nov 25, 2010 10:58 am Subject: [SPAM] Re: [Neo4j] [SPAM] Re: Datetimes in Neo4j REST Server To: Neo4j user discussions user@lists.neo4j.org On Thu, Nov 25, 2010 at 07:11, Craig Taverner cr...@amanzi.com wrote: My vote is to keep the REST API as close as possible to the core Neo4j. If dates are added to the core, then add them to the REST API. Until then, surely this is an application level issue... +1. I wish the Date type were added soon to the Neo4j core. It woul be a good extra point in traversals. -- Javier de la Rosa http://versae.es ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] [SPAM] Using EmbeddedGraphDatabase in Tomc at
We avoid hot deployment for a whole body of reasons...not just neo. - Reply message - From: Wilson, Kalin kwil...@scitor.com Date: Wed, Nov 10, 2010 7:52 pm Subject: [SPAM] [Neo4j] Using EmbeddedGraphDatabase in Tomcat To: user@lists.neo4j.org I am trying to learn Neo4J and prototype a simple web app using a simple servlet/JSP approach (no Spring or other framework) in Tomcat. I have an instance of EmbeddedGraphDatabase that gets stored in a ThreadLocal variable for use by other classes in a Singleton manner. This singleton variable gets initialized in a ServletContextListener and shutdown() gets called in the listener's contextDestroyed() method. The first time the app is started the database is initialized properly and everything seems OK. However, if I make code changes in a debugging session and the changed files get hot deployed, subsequent database accesses result in a lock exception. To recover I have to kill tomcat and delete the database files. It doesn't seem that I'm calling shutdown() at the right time to protect the database. I'm assuming that database access should be through some sort of singleton, is this correct? I'm used to using a JPA EntityManager. Assuming I can't use Spring injection, etc, what is the recommended pattern for managing the GraphDatabaseService instance in a web app? Any help is appreciated. Kalin ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Meet the Neo4j team at JavaOne
Can't be there, but i'll buy a round of beers for those that are... Sent from my Verizon Wireless Phone - Reply message - From: Anders Nawroth and...@neotechnology.com Date: Wed, Sep 22, 2010 10:22 pm Subject: [Neo4j] Meet the Neo4j team at JavaOne To: Neo4j user discussions user@lists.neo4j.org Hi! For those not reading the @neo4j tweets: Beer meetup with the Neo4j team at Urban Tavern, Hilton Union Square, San Francisco 9:30 PM today - see you there! /anders On 09/20/2010 07:37 AM, Tobias Ivarsson wrote: Hi friends! If anyone is in San Francisco this week you'll be glad to hear that the entire Neo4j team is in town for JavaOne. If you are at the conference please stop by our booth in the Exhibition Hall in the Continental Ballrooms (one floor up) at Hilton San Francisco Union Square. We also have two sessions that you might be interested in checking out. On Tuesday at 11:30am Tobias Ivarsson is giving a talk entitled Choosing the Right NoSQL Database in the Yosemite B room at Hilton San Francisco Union Square. On Wednesday at 2:15pm Emil Eifrem is giving a talk entitled Neo4j: A NoSQL Graph Database for the Java Virtual Machine in the Golden Gate 6/7 room at Hilton San Francisco Union Square. Anyone in San Francisco with an interest in discussing graph databases is very welcome to join us for beers any night of the week. We will try to put together a slightly more organized beer event one of the nights, more information about that in another email. Unfortunately all this fun has a slight drawback. Since we will be busy with the conference we will be slightly less responsive if you send e-mails to us this week, and the commit rate from the core team will also be slightly lower this week. Welcome to the Party! ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user
Re: [Neo4j] Oracle suing open source product developers usi ng Java
Precisely, Arjen. The likely outcome is one of the many cross licensing agreements that exist between the big software companies. Phone manufacturers who use Java ME have been doing this for a while. - Reply message - From: Arjen van der Meijden acmmail...@tweakers.net Date: Sat, Aug 14, 2010 5:57 am Subject: [Neo4j] Oracle suing open source product developers using Java To: user@lists.neo4j.org Isn't the Oracle-Google suit against the jvm-like internals of Android, rather than the fact that the application developers use Java? Besides, afaik patents are language independent, so that won't matter much anyway. But fortunately, Neo4j isn't an American company, but European. Software patents aren't so common in the EU, nor are software patent based lawsuits. Anyway, I think you blow things way out of proportion now. Although I'd have to agree that the Oracle-suit is rather silly (they're probably hoping to get some piece of the pie by getting a license agreement with Google). Best regards, Arjen On 14-8-2010 10:03 suryadev vasudev wrote: Hi Neo team, Friday the 13th was a bad day for Java lovers. All of us heard today that Oracle is suing Google for using Java in Android. This mobile O/S uses Java and is open source. We all know Google could have used its own operating system. Java provides no feature that a smart team of people can't write. Streams, file handling, Internet protocols, GUI are not the exclusive domain of Java. All these things were done in Assembly, C and C++ languages. Neo team also has made the same mistake as Google. You could have used C or C** to develop your application. Are you concerned that Oracle may train its gun on you? Neo DB could be a threat to Oracle. What are your road maps to move away from Java? or do you think you are protected from similar law suits? Regards Suryadev ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user ___ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user