Re: Cannot Run Spatial Query Example

2019-11-21 Thread Humphrey
I’ve never used that setup before, so can’t help you there. Mostly I just
downloaded the zip distribution [1] and unpack it. You can drop the extra
jars needed in the lib folder. 

Hope this helps you to get it working. Let me know when you succeed. 

[1] https://ignite.apache.org/download.cgi#binaries

Humphrey 



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot Run Spatial Query Example

2019-11-21 Thread richard.ows...@viasat.com
I see, thank you.  I was trying to deploy the dependencies to an Ignite
Cluster installed with the DEB Setup:

https://apacheignite.readme.io/docs/rpm-and-deb-setup

I was under the impression that I could deploy the ignite-geospatial jar
dependency and it should work?



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot Run Spatial Query Example

2019-11-20 Thread Humphrey
I've added the server node to a docker instance. 
(https://github.com/hmmlopez/geo-ignite-example)

1) change directory to the server project and run: 
mvn package dockerfile:build
2) start docker exposing the necessary ports: 
docker run -p 47500:47500 -p 47100:47100 -t springio/server
3) Run the client from your IDE

Still working for me running the server node inside a docker container.



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot Run Spatial Query Example

2019-11-20 Thread richard.ows...@viasat.com
I can avoid that error if I change the geometry dependencies to this:


com.vividsolutions
jts
1.13


import com.vividsolutions.jts.geom.Geometry;
import com.vividsolutions.jts.io.WKTReader;

Then the the above exception is not thrown when creating the cache in client
mode, but then I get the following error when the query is executed:

[22:07:44,469][SEVERE][query-#9354][GridMapQueryExecutor] Failed to execute
local query.
class org.apache.ignite.IgniteCheckedException: Failed to execute SQL query.
Data conversion error converting "com.vividsolutions.jts.geom.Point
[idHash=1139007856, hash=-2050907330,
factory=com.vividsolutions.jts.geom.GeometryFactory [idHash=1194750971,
hash=1836134263, precisionModel=com.vividsolutions.jts.geom.PrecisionModel
[idHash=976951851, hash=-579810316, scale=0.0,
modelType=com.vividsolutions.jts.geom.PrecisionModel$Type
[idHash=1594250412, hash=679225126, name=FLOATING]],
coordinateSequenceFactory=com.vividsolutions.jts.geom.impl.CoordinateArraySequenceFactory
[idHash=1122645044, hash=1], SRID=0], envelope=null, userData=null,
coordinates=com.vividsolutions.jts.geom.impl.CoordinateArraySequence
[idHash=909590073, hash=-1372201509,
coordinates=[com.vividsolutions.jts.geom.Coordinate [idHash=1421840534,
hash=-1616930514, x=2351.0, y=720.0, z=NaN], dimension=3], SRID=0]"; SQL
statement:
SELECT
"SpatialQueryExample".__Z0._KEY __C0_0,
"SpatialQueryExample".__Z0._VAL __C0_1
FROM "SpatialQueryExample".MAPPOINT __Z0
WHERE INTERSECTS(__Z0.COORDS, ?1) [22018-197]
at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSqlQuery(IgniteH2Indexing.java:1434)
at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSqlQueryWithTimer(IgniteH2Indexing.java:1495)
at
org.apache.ignite.internal.processors.query.h2.twostep.GridMapQueryExecutor.onQueryRequest0(GridMapQueryExecutor.java:930)
at
org.apache.ignite.internal.processors.query.h2.twostep.GridMapQueryExecutor.onQueryRequest(GridMapQueryExecutor.java:705)
at
org.apache.ignite.internal.processors.query.h2.twostep.GridMapQueryExecutor.onMessage(GridMapQueryExecutor.java:240)
at
org.apache.ignite.internal.processors.query.h2.twostep.GridMapQueryExecutor$2.onMessage(GridMapQueryExecutor.java:200)
at
org.apache.ignite.internal.managers.communication.GridIoManager$ArrayListener.onMessage(GridIoManager.java:2349)
at
org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1569)
at
org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1197)
at
org.apache.ignite.internal.managers.communication.GridIoManager.access$4200(GridIoManager.java:127)
at
org.apache.ignite.internal.managers.communication.GridIoManager$9.run(GridIoManager.java:1093)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: org.h2.jdbc.JdbcSQLException: Data conversion error converting
"com.vividsolutions.jts.geom.Point [idHash=1139007856, hash=-2050907330,
factory=com.vividsolutions.jts.geom.GeometryFactory [idHash=1194750971,
hash=1836134263, precisionModel=com.vividsolutions.jts.geom.PrecisionModel
[idHash=976951851, hash=-579810316, scale=0.0,
modelType=com.vividsolutions.jts.geom.PrecisionModel$Type
[idHash=1594250412, hash=679225126, name=FLOATING]],
coordinateSequenceFactory=com.vividsolutions.jts.geom.impl.CoordinateArraySequenceFactory
[idHash=1122645044, hash=1], SRID=0], envelope=null, userData=null,
coordinates=com.vividsolutions.jts.geom.impl.CoordinateArraySequence
[idHash=909590073, hash=-1372201509,
coordinates=[com.vividsolutions.jts.geom.Coordinate [idHash=1421840534,
hash=-1616930514, x=2351.0, y=720.0, z=NaN], dimension=3], SRID=0]"; SQL
statement:
SELECT
"SpatialQueryExample".__Z0._KEY __C0_0,
"SpatialQueryExample".__Z0._VAL __C0_1
FROM "SpatialQueryExample".MAPPOINT __Z0
WHERE INTERSECTS(__Z0.COORDS, ?1) [22018-197]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:357)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.value.Value.convertTo(Value.java:1029)
at org.h2.value.Value.convertTo(Value.java:617)
at org.h2.value.Value.convertTo(Value.java:592)
at org.h2.expression.Comparison.compareNotNull(Comparison.java:323)
at org.h2.expression.Comparison.getValue(Comparison.java:274)
at org.h2.expression.Expression.getBooleanValue(Expression.java:178)
at org.h2.command.dml.Select.isConditionMet(Select.java:312)
at
org.h2.command.dml.Select$LazyResultQueryFlat.fetchNextRow(Select.java:1455)
at 

Re: Cannot Run Spatial Query Example

2019-11-20 Thread richard.ows...@viasat.com
Thank you for the repo.  It appears it can't instantiate a Spatial Index on
the remote cluster nodes when I run the client mode.  Am I missing a
dependency?  I get the following error on the remote node:

[21:54:17,671][SEVERE][exchange-worker-#63][GridDhtPartitionsExchangeFuture]
Failed to initialize cache(s) (will try to rollback).
GridDhtPartitionExchangeId [topVer=AffinityTopologyVersion [topVer=430,
minorTopVer=1], discoEvt=DiscoveryCustomEvent
[customMsg=DynamicCacheChangeBatch
[id=05daeca8e61-18db0e45-c9df-4ff6-8287-3927de9c23fa,
reqs=[DynamicCacheChangeRequest [cacheName=SpatialQueryExample, hasCfg=true,
nodeId=b4cec277-0758-4464-ae42-e34bc98dfc5c, clientStartOnly=false,
stop=false, destroy=false, disabledAfterStartfalse]],
exchangeActions=ExchangeActions [startCaches=[SpatialQueryExample],
stopCaches=null, startGrps=[SpatialQueryExample], stopGrps=[],
resetParts=null, stateChangeRequest=null], startCaches=false],
affTopVer=AffinityTopologyVersion [topVer=430, minorTopVer=1],
super=DiscoveryEvent [evtNode=TcpDiscoveryNode
[id=b4cec277-0758-4464-ae42-e34bc98dfc5c, addrs=[0:0:0:0:0:0:0:1%lo0,
127.0.0.1, 172.24.41.95], sockAddrs=[/127.0.0.1:0, 0:0:0:0:0:0:0:1%lo0:0,
/172.24.41.95:0], discPort=0, order=430, intOrder=219,
lastExchangeTime=1574286856574, loc=false, ver=2.7.6#20190911-sha1:21f7ca41,
isClient=true], topVer=430, nodeId8=05191ad0, msg=null,
type=DISCOVERY_CUSTOM_EVT, tstamp=1574286857650]], nodeId=b4cec277,
evt=DISCOVERY_CUSTOM_EVT]
class org.apache.ignite.IgniteException: Failed to instantiate:
org.apache.ignite.internal.processors.query.h2.opt.GridH2SpatialIndex
at
org.apache.ignite.internal.processors.query.h2.H2Utils.createSpatialIndex(H2Utils.java:187)
at
org.apache.ignite.internal.processors.query.h2.H2TableDescriptor.createUserIndex(H2TableDescriptor.java:307)
at
org.apache.ignite.internal.processors.query.h2.H2TableDescriptor.createUserIndexes(H2TableDescriptor.java:272)
at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.createTable(IgniteH2Indexing.java:2914)
at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:2815)
at
org.apache.ignite.internal.processors.query.GridQueryProcessor.registerCache0(GridQueryProcessor.java:1633)
at
org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart0(GridQueryProcessor.java:805)
at
org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:866)
at
org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:1337)
at
org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:2172)
at
org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager.processCacheStartRequests(CacheAffinitySharedManager.java:898)
at
org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager.onCacheChangeRequest(CacheAffinitySharedManager.java:798)
at
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onCacheChangeRequest(GridDhtPartitionsExchangeFuture.java:1234)
at
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:741)
at
org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2681)
at
org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2553)
at
org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:120)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.reflect.InvocationTargetException
at 
jdk.internal.reflect.GeneratedConstructorAccessor49.newInstance(Unknown
Source)
at
java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at
java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
at
org.apache.ignite.internal.processors.query.h2.H2Utils.createSpatialIndex(H2Utils.java:184)
... 17 more
Caused by: org.h2.message.DbException: Feature not supported: "spatial index
on non-geometry column, COORDS OTHER" [50100-197]
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at 
org.h2.message.DbException.getUnsupportedException(DbException.java:228)
at
org.apache.ignite.internal.processors.query.h2.opt.GridH2SpatialIndex.(GridH2SpatialIndex.java:121)
... 21 more
Caused by: org.h2.jdbc.JdbcSQLException: Feature not supported: "spatial
index on non-geometry column, COORDS OTHER" [50100-197]
at 

Re: Cannot Run Spatial Query Example

2019-11-20 Thread Humphrey
Hi Richard,

I've added a repository in github:  geo-ignite-example
  

Almost the same as you've seen before. It consists of two modules, one
client and one server. Currently, I'm running both on the same machine
without any problem. Can you try it out on multiple machines to see if you
can reproduce your error?

Humphrey



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot Run Spatial Query Example

2019-11-19 Thread richard.ows...@viasat.com
Yes, thank you for looking at this.  I just made some basic mods to the
AppConfig to run in client mode and connect to the cluster:

package com.example.geoigniteexample.config;

import org.apache.ignite.Ignite;
import org.apache.ignite.Ignition;
import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.logger.slf4j.Slf4jLogger;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import
org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
import org.jetbrains.annotations.NotNull;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.Arrays;

@Configuration
public class AppConfig {

@Bean
public Ignite igniteInstance() {
// return Ignition.start("/config/ignite/test.xml");
return Ignition.start(igniteConfiguration());
// return Ignition.start("config/ignite/test.xml"); //
igniteConfiguration());
}

private IgniteConfiguration igniteConfiguration() {
return new IgniteConfiguration()
.setGridLogger(new Slf4jLogger())
.setMetricsLogFrequency(0)
// add these to be client
.setClientMode(true)
.setPeerClassLoadingEnabled(true)
.setDiscoverySpi(discoverySpi());
}


private TcpDiscoverySpi discoverySpi() {
return new TcpDiscoverySpi().setIpFinder(ipFinder());
}

private TcpDiscoveryVmIpFinder ipFinder() {
return new
TcpDiscoveryVmIpFinder().setAddresses(Arrays.asList("1.6.7.9", "1.6.6.6",
"1.0.7.8")); //Arrays.asList("localhost:47500"));
// return new
TcpDiscoveryVmIpFinder().setAddresses(Arrays.asList("localhost:47500"));
}

}



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot Run Spatial Query Example

2019-11-19 Thread Humphrey
If I have time tomorrow I’ll try with more nodes in cluster.
Do you have a small reproducible project?



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot Run Spatial Query Example

2019-11-19 Thread richard.ows...@viasat.com
Thank you for the code sample.  I can get this to run, but I cannot get it to
work when connecting to a remote cluster.  That is when I receive the
IgniteCheckedException.  I have added the following jars to the remote nodes
/libs folder:

ignite-geospatial-2.7.2.jar
jts-1.13.jar

Here's the stacktrace:
EVERE: Failed to execute local query.
class org.apache.ignite.IgniteCheckedException: Failed to execute SQL query.
Data conversion error converting "com.vividsolutions.jts.geom.Point
[idHash=963768574, hash=-229554403,
coordinates=com.vividsolutions.jts.geom.impl.CoordinateArraySequence
[idHash=596905862, hash=374600413, dimension=3,
coordinates=[com.vividsolutions.jts.geom.Coordinate [idHash=1712666248,
hash=-1405598900, x=8873.0, y=3969.0, z=NaN]], envelope=null,
factory=com.vividsolutions.jts.geom.GeometryFactory [idHash=1163404461,
hash=1836134263, precisionModel=com.vividsolutions.jts.geom.PrecisionModel
[idHash=1931008760, hash=-579810316,
modelType=com.vividsolutions.jts.geom.PrecisionModel$Type
[idHash=1894978338, hash=679225126, name=FLOATING], scale=0.0],
coordinateSequenceFactory=com.vividsolutions.jts.geom.impl.CoordinateArraySequenceFactory
[idHash=1058921154, hash=1], SRID=0], SRID=0, userData=null]"; SQL
statement:
SELECT
SPATIAL_CACHE1.__Z0._KEY __C0_0,
SPATIAL_CACHE1.__Z0._VAL __C0_1
FROM SPATIAL_CACHE1.MAPPOINT __Z0
WHERE INTERSECTS(__Z0.COORDS, ?1) [22018-197]
at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSqlQuery(IgniteH2Indexing.java:1434)
at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.executeSqlQueryWithTimer(IgniteH2Indexing.java:1495)
at
org.apache.ignite.internal.processors.query.h2.twostep.GridMapQueryExecutor.onQueryRequest0(GridMapQueryExecutor.java:930)
at
org.apache.ignite.internal.processors.query.h2.twostep.GridMapQueryExecutor.onQueryRequest(GridMapQueryExecutor.java:705)
at
org.apache.ignite.internal.processors.query.h2.twostep.GridMapQueryExecutor.onMessage(GridMapQueryExecutor.java:240)
at
org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$1.applyx(GridReduceQueryExecutor.java:170)
at
org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$1.applyx(GridReduceQueryExecutor.java:168)
at
org.apache.ignite.internal.util.lang.IgniteInClosure2X.apply(IgniteInClosure2X.java:38)
at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.send(IgniteH2Indexing.java:3405)
at
org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.send(GridReduceQueryExecutor.java:1642)
at
org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:876)
at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$8.iterator(IgniteH2Indexing.java:1809)
at
org.apache.ignite.internal.processors.cache.QueryCursorImpl.iterator(QueryCursorImpl.java:95)
at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$9.iterator(IgniteH2Indexing.java:1877)
at
org.apache.ignite.internal.processors.cache.QueryCursorImpl.iterator(QueryCursorImpl.java:95)
at
org.apache.ignite.internal.processors.cache.QueryCursorImpl.getAll(QueryCursorImpl.java:114)
at
com.viasat.atg.em.msgeo.memoir.streamers.SpatialQueryExample.main(SpatialQueryExample.java:68)
Caused by: org.h2.jdbc.JdbcSQLException: Data conversion error converting
"com.vividsolutions.jts.geom.Point [idHash=963768574, hash=-229554403,
coordinates=com.vividsolutions.jts.geom.impl.CoordinateArraySequence
[idHash=596905862, hash=374600413, dimension=3,
coordinates=[com.vividsolutions.jts.geom.Coordinate [idHash=1712666248,
hash=-1405598900, x=8873.0, y=3969.0, z=NaN]], envelope=null,
factory=com.vividsolutions.jts.geom.GeometryFactory [idHash=1163404461,
hash=1836134263, precisionModel=com.vividsolutions.jts.geom.PrecisionModel
[idHash=1931008760, hash=-579810316,
modelType=com.vividsolutions.jts.geom.PrecisionModel$Type
[idHash=1894978338, hash=679225126, name=FLOATING], scale=0.0],
coordinateSequenceFactory=com.vividsolutions.jts.geom.impl.CoordinateArraySequenceFactory
[idHash=1058921154, hash=1], SRID=0], SRID=0, userData=null]"; SQL
statement:
SELECT
SPATIAL_CACHE1.__Z0._KEY __C0_0,
SPATIAL_CACHE1.__Z0._VAL __C0_1
FROM SPATIAL_CACHE1.MAPPOINT __Z0
WHERE INTERSECTS(__Z0.COORDS, ?1) [22018-197]
at
org.h2.message.DbException.getJdbcSQLException(DbException.java:357)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.value.Value.convertTo(Value.java:1029)
at org.h2.value.Value.convertTo(Value.java:617)
at org.h2.value.Value.convertTo(Value.java:592)
at org.h2.expression.Comparison.compareNotNull(Comparison.java:323)
at org.h2.expression.Comparison.getValue(Comparison.java:274)
at 

Re: Cannot Run Spatial Query Example

2019-11-19 Thread Humphrey
I have a working example for you with latest version of Ignite.

Had to take off the index=true from the MapPoint.

I used Lombok, so make sure you have lombok plugin installed in your IDE.

Hope this helps you.

geo-ignite-example-working.zip

  



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot Run Spatial Query Example

2019-11-19 Thread Humphrey
I have a working example for you with latest version of Ignite.

Had to take off the index=true from the MapPoint.

I used Lombok, so make sure you have lombok plugin installed in your IDE.

Hope this helps you.

geo-ignite-example-working.zip

  



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot Run Spatial Query Example

2019-11-19 Thread Humphrey
Looks like this project is based on a very old version of Ignite.


1.7.0




--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot Run Spatial Query Example

2019-11-18 Thread richard.ows...@viasat.com
yes, thank you for the reply:

https://github.com/dmagda/geospatial/blob/master/src/main/java/org/geospatial/SpatialQueryExample.java




--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot Run Spatial Query Example

2019-11-17 Thread Humphrey
Do you have a link to the file or the example?



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/