Please find below:

    @SuppressWarnings("deprecation")
    public void addSpatial(){
        Transaction tx = graphService.beginTx();
        IndexImplementation indexImpl = new SpatialIndexImplementation 
(graphService);        
        Index<Node> nodeIndex = indexImpl.nodeIndex("Geocode", 
SpatialIndexProvider.SIMPLE_WKT_CONFIG);
        Label label = DynamicLabel.label("Address");
        GlobalGraphOperations global = 
GlobalGraphOperations.at(graphService);
        Iterable<Node> allNodes = global.getAllNodesWithLabel(label);
        
        for(Node node: allNodes){
            
            try{
            if(node.hasProperty("addressLine1")){
                Node added = graphService.createNode();
                added.setProperty("wkt", node.getProperty("wkt"));
                System.out.println("Adding node " + added.getId());
                nodeIndex.add(added, "addressLine1", 
node.getProperty("addressLine1"));
            }
            }catch(Exception e){
                e.printStackTrace(System.out);
                tx.failure();
            }
            tx.success();
                    
        }
        tx.finish();
        
    }    


On Tuesday, February 11, 2014 4:56:14 AM UTC-5, Michael Hunger wrote:
>
> Can you share the code you used?
>
> Thanks so much.
>
> Michael
>
> Am 11.02.2014 um 10:47 schrieb Pattabi <[email protected] <javascript:>>:
>
> Michael,
>
> Was able to add the nodes to layer.
> When I execute 'withinDistance' using the spatial index 'Geocode' I get 
> index not found exception
> I notice that 
> 'Geocode__neo4j-spatial__LayerNodeIndex__internal__spatialNodeLookup__' 
> lucene index is created and is not empty. Did I miss anything?
>
>
>
> On Monday, February 10, 2014 2:13:15 PM UTC-5, Pattabi wrote:
>>
>> Thanks :) just noticed that it was a placebo. will fix.
>> the WKT is in this format - POINT( %f %.2f )
>> wkt field looks fine - 
>>
>> On Monday, February 10, 2014 2:11:02 PM UTC-5, Michael Hunger wrote:
>>>
>>> You forgot tx.finish(); 
>>>
>>> What is the content of your wkt field? 
>>>
>>> Transaction tx = graphService.beginTx(); 
>>>   do-stuff 
>>>   tx.succes(); 
>>>   tx.finish(); 
>>>
>>> Am 10.02.2014 um 19:49 schrieb Pattabi <[email protected]>: 
>>>
>>> > Thanks Michael. I will try this. 
>>> > 
>>> > I tried the following and getting an error while adding the 
>>> SpatialDatabaseRecord to the Spatial Index Impl. 
>>> > The error is 
>>> > Caused by: javax.transaction.RollbackException: Tx status is: 
>>> STATUS_MARKED_ROLLBACK 
>>> >     at 
>>> org.neo4j.kernel.impl.transaction.TransactionImpl.enlistResource(TransactionImpl.java:237)
>>>  
>>>
>>> >     at 
>>> org.neo4j.kernel.impl.transaction.xaframework.XaConnectionHelpImpl.enlistResource(XaConnectionHelpImpl.java:103)
>>>  
>>>
>>> >     at 
>>> org.neo4j.kernel.impl.index.IndexConnectionBroker.acquireResourceConnection(IndexConnectionBroker.java:56)
>>>  
>>>
>>> >     ... 6 more 
>>> > 
>>> > 
>>> > 
>>> >         IndexImplementation indexImpl = new SpatialIndexImplementation 
>>> (graphService);         
>>> >         Index<Node> nodeIndex = indexImpl.nodeIndex("Geocode", 
>>> SpatialIndexProvider.SIMPLE_WKT_CONFIG); 
>>> >         Iterable<Node> allNodes = graphService.getAllNodes(); 
>>> >         for(Node node: allNodes){ 
>>> >             Transaction tx = graphService.beginTx(); 
>>> >             try{ 
>>> >             if(node.hasProperty("addressLine1")){ 
>>> >                 Node added = graphService.createNode(); 
>>> >                 added.setProperty("wkt", node.getProperty("wkt")); 
>>> >                 System.out.println("Adding node " + added.getId()); 
>>> >                 nodeIndex.add(added, "addressLine1", 
>>> node.getProperty("addressLine1")); 
>>> >             } 
>>> >             }catch(Exception e){ 
>>> >                 e.printStackTrace(System.out); 
>>> >                 tx.failure(); 
>>> >             } 
>>> >             tx.success(); 
>>> > 
>>> > 
>>> > On Monday, February 10, 2014 1:12:16 PM UTC-5, Michael Hunger wrote: 
>>> > Just with the core api. 
>>> > 
>>> > db.index().forNodes("spatial").add(node, "dummy","dummy"); 
>>> > 
>>> > depending on the config 
>>> > 
>>> > node has to have geo-properties (lat, lon) 
>>> > or 
>>> > node has to have geo-properties (point in well-known-text (wkt)) 
>>> > 
>>> > SDN uses this index-config: 
>>> > 
>>> > MapUtil.stringMap( 
>>> >                       IndexManager.PROVIDER, "spatial", 
>>> "geometry_type" , "point","wkt","wkt") 
>>> > 
>>> > and "wkt" as property-name for the well-known-text-point. 
>>> > 
>>> > 
>>> http://docs.spring.io/spring-data/data-neo4j/docs/2.3.x/reference/htmlsingle/#reference_spatial
>>>  
>>> > 
>>> > Michael 
>>> > 
>>> > Am 10.02.2014 um 19:08 schrieb Pattabi <[email protected]>: 
>>> > 
>>> >> MH, 
>>> >> If I have to replicate the SDN's behavior for adding a Node to 
>>> spatial index, do I need to do all the following? 
>>> >> Create a Geom node, add to index by calling add(node,key, value) and 
>>> create relationship types - RTREE_REFERENCE? 
>>> >> 
>>> >> 
>>> >> 
>>> >> 
>>> >> On Friday, February 7, 2014 9:05:29 PM UTC-5, Michael Hunger wrote: 
>>> >> How many nodes are you adding at once and how big is your Java heap? 
>>> >> 
>>> >> You don't have to create a layer, the index automatically creates the 
>>> layer. 
>>> >> 
>>> >> Michael 
>>> >> 
>>> >> Am 07.02.2014 um 21:55 schrieb Pattabi <[email protected]>: 
>>> >> 
>>> >>> Getting this error while loading bean which has a 'wkt/spatial' 
>>> index 
>>> >>> using  - Spring data-neo4j  3.0.0.BUILD-20140207...., neo4j 2.0.0 
>>> >>> 
>>> >>> Note: I do not know how to do batch insert a spatial (as it is my 
>>> understanding that I need to create a layer with that WKT, add these nodes 
>>> to that layer) 
>>> >>> I looked at the code 'SpatialIndexImplementation' nodeIndex. If I 
>>> have to do batch insert, adding to this index would be sufficient? 
>>> >>> 
>>> >>> The stack trace is as shown below: 
>>> >>> 
>>> >>> Exception in thread "main" java.lang.OutOfMemoryError: Java heap 
>>> space 
>>> >>>     at 
>>> org.apache.lucene.store.BufferedIndexOutput.<init>(BufferedIndexOutput.java:26)
>>>  
>>>
>>> >>>     at 
>>> org.apache.lucene.store.FSDirectory$FSIndexOutput.<init>(FSDirectory.java:438)
>>>  
>>>
>>> >>>     at 
>>> org.apache.lucene.store.FSDirectory.createOutput(FSDirectory.java:306) 
>>> >>>     at 
>>> org.apache.lucene.index.FormatPostingsPositionsWriter.<init>(FormatPostingsPositionsWriter.java:43)
>>>  
>>>
>>> >>>     at 
>>> org.apache.lucene.index.FormatPostingsDocsWriter.<init>(FormatPostingsDocsWriter.java:57)
>>>  
>>>
>>> >>>     at 
>>> org.apache.lucene.index.FormatPostingsTermsWriter.<init>(FormatPostingsTermsWriter.java:33)
>>>  
>>>
>>> >>>     at 
>>> org.apache.lucene.index.FormatPostingsFieldsWriter.<init>(FormatPostingsFieldsWriter.java:51)
>>>  
>>>
>>> >>>     at 
>>> org.apache.lucene.index.FreqProxTermsWriter.flush(FreqProxTermsWriter.java:85)
>>>  
>>>
>>> >>>     at org.apache.lucene.index.TermsHash.flush(TermsHash.java:113) 
>>> >>>     at 
>>> org.apache.lucene.index.DocInverter.flush(DocInverter.java:70) 
>>> >>>     at 
>>> org.apache.lucene.index.DocFieldProcessor.flush(DocFieldProcessor.java:60) 
>>> >>>     at 
>>> org.apache.lucene.index.DocumentsWriter.flush(DocumentsWriter.java:581) 
>>> >>>     at 
>>> org.apache.lucene.index.IndexWriter.doFlush(IndexWriter.java:3587) 
>>> >>>     at 
>>> org.apache.lucene.index.IndexWriter.flush(IndexWriter.java:3552) 
>>> >>>     at 
>>> org.apache.lucene.index.IndexWriter.getReader(IndexWriter.java:450) 
>>> >>>     at 
>>> org.apache.lucene.index.IndexWriter.getReader(IndexWriter.java:399) 
>>> >>>     at 
>>> org.apache.lucene.index.DirectoryReader.doOpenFromWriter(DirectoryReader.java:413)
>>>  
>>>
>>> >>>     at 
>>> org.apache.lucene.index.DirectoryReader.doOpenIfChanged(DirectoryReader.java:432)
>>>  
>>>
>>> >>>     at 
>>> org.apache.lucene.index.DirectoryReader.doOpenIfChanged(DirectoryReader.java:375)
>>>  
>>>
>>> >>>     at 
>>> org.apache.lucene.index.DirectoryReader.doOpenIfChanged(DirectoryReader.java:392)
>>>  
>>>
>>> >>>     at 
>>> org.apache.lucene.index.IndexReader.openIfChanged(IndexReader.java:634) 
>>> >>>     at 
>>> org.neo4j.index.impl.lucene.LuceneDataSource.refreshSearcher(LuceneDataSource.java:505)
>>>  
>>>
>>> >>>     at 
>>> org.neo4j.index.impl.lucene.LuceneDataSource.refreshSearcherIfNeeded(LuceneDataSource.java:635)
>>>  
>>>
>>> >>>     at 
>>> org.neo4j.index.impl.lucene.LuceneDataSource.getIndexSearcher(LuceneDataSource.java:577)
>>>  
>>>
>>> >>>     at 
>>> org.neo4j.index.impl.lucene.LuceneIndex.query(LuceneIndex.java:293) 
>>> >>>     at 
>>> org.neo4j.index.impl.lucene.LuceneIndex.query(LuceneIndex.java:251) 
>>> >>>     at 
>>> org.neo4j.gis.spatial.indexprovider.LayerNodeIndex.findExistingNode(LayerNodeIndex.java:152)
>>>  
>>>
>>> >>>     at 
>>> org.neo4j.gis.spatial.indexprovider.LayerNodeIndex.add(LayerNodeIndex.java:132)
>>>  
>>>
>>> >>>     at 
>>> org.neo4j.gis.spatial.indexprovider.LayerNodeIndex.add(LayerNodeIndex.java:1)
>>>  
>>>
>>> >>>     at 
>>> org.springframework.data.neo4j.fieldaccess.IndexingPropertyFieldAccessorListenerFactory$IndexingPropertyFieldAccessorListener.valueChanged(IndexingPropertyFieldAccessorListenerFactory.java:86)
>>>  
>>>
>>> >>>     at 
>>> org.springframework.data.neo4j.fieldaccess.DefaultEntityState.notifyListeners(DefaultEntityState.java:137)
>>>  
>>>
>>> >>>     at 
>>> org.springframework.data.neo4j.fieldaccess.DefaultEntityState.setValue(DefaultEntityState.java:114)
>>>  
>>>
>>> >>>   
>>> >>> 
>>> >>> -- 
>>> >>> You received this message because you are subscribed to the Google 
>>> Groups "Neo4j" group. 
>>> >>> To unsubscribe from this group and stop receiving emails from it, 
>>> send an email to [email protected]. 
>>> >>> For more options, visit https://groups.google.com/groups/opt_out. 
>>> >> 
>>> >> 
>>> >> -- 
>>> >> You received this message because you are subscribed to the Google 
>>> Groups "Neo4j" group. 
>>> >> To unsubscribe from this group and stop receiving emails from it, 
>>> send an email to [email protected]. 
>>> >> For more options, visit https://groups.google.com/groups/opt_out. 
>>> > 
>>> > 
>>> > -- 
>>> > You received this message because you are subscribed to the Google 
>>> Groups "Neo4j" group. 
>>> > To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected]. 
>>> > For more options, visit https://groups.google.com/groups/opt_out. 
>>>
>>>
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Neo4j" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] <javascript:>.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Neo4j" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to