koopjs / koop-provider-gist

Github gist provider for Koop.
Other
5 stars 2 forks source link

crashes after a refresh #3

Closed soichih closed 8 years ago

soichih commented 10 years ago

My koop instance can display GeoJson object from gist the first time I open the page, but when I refresh the page, nothing gets displayed on the map. (same issue for koop-github also)

I saw following message once, but so far I can't recreate this consistently.. I am not sure if this is related to the issue.

TypeError: Cannot read property 'geometry' of undefined at Object.module.exports.setGeomType (/koop/node_modules/koop-server/lib/FeatureServices.js:83:18) at Object.module.exports.info (/koop/node_modules/koop-server/lib/FeatureServices.js:106:19) at Object.exports._processFeatureServer (/koop/node_modules/koop-server/lib/Controller.js:55:27) at /koop/node_modules/koop-gist/controller/index.js:91:20 at /koop/node_modules/koop-gist/models/Gist.js:36:7 at /koop/node_modules/koop-server/lib/Cache.js:37:9 at Statement. (/koop/node_modules/koop-server/lib/SQLite.js:328:13) --> in Database#all('select * from "kooptimers" where id=\'Gist:6178185:0:timer\'', [Function]) at Object.module.exports._query (/koop/node_modules/koop-server/lib/SQLite.js:347:13) at Object.module.exports.timer.get (/koop/node_modules/koop-server/lib/SQLite.js:323:14) at Object.exports.process (/koop/node_modules/koop-server/lib/Cache.js:34:20) at /koop/node_modules/koop-server/lib/Cache.js:97:10 at Statement. (/koop/node_modules/koop-server/lib/SQLite.js:167:15) Program node server.js exited with code 8

chelm commented 10 years ago

Interesting. Are you running with spatialite or PostGIS? You could try connecting to a postgis db and let me know if you see the issue?

soichih commented 10 years ago

I have following in my defaul.yml

db: sqlite: filename: ':memory:'

I am guessing this means it's using spatialite? I will try setting up postgres and see if it works better.

soichih commented 10 years ago

OK, I've installed postgres (I hope I did it right..), and updated my default.yml to following.

db: postgis: conn: "postgres://postgres@db/postgres"

When I started it, and accessed a page, I saw somewhat similar error message.

Starting child process with 'node server.js' Listening at http://0.0.0.0:8080/ select feature->>'id' as id, feature->>'properties' as props, feature->>'geometry' as geom from "Gist:6178185:0" WHERE 1=1 AND ST_Intersects(ST_GeomFromGeoJSON(feature->>'geometry'), ST_MakeEnvelope(-32.671751976013184,80.28449478152183,57.328248023986816,87.97570224431067)) ORDER BY id select feature->>'id' as id, feature->>'properties' as props, feature->>'geometry' as geom from "Gist:6178185:0" ORDER BY id

/koop/node_modules/koop-server/lib/FeatureServices.js:83 if ( feature.geometry && ( feature.geometry.type.toLowerCase() == 'polygo ^ TypeError: Cannot read property 'geometry' of undefined at Object.module.exports.setGeomType (/koop/node_modules/koop-server/lib/FeatureServices.js:83:18) at Object.module.exports.info (/koop/node_modules/koop-server/lib/FeatureServices.js:106:19) at Object.exports._processFeatureServer (/koop/node_modules/koop-server/lib/Controller.js:55:27) at /koop/node_modules/koop-gist/controller/index.js:91:20 at /koop/node_modules/koop-gist/models/Gist.js:36:7 at /koop/node_modules/koop-server/lib/Cache.js:37:9 at /koop/node_modules/koop-server/lib/PostGIS.js:456:13 at null.callback (/koop/node_modules/koop-server/lib/PostGIS.js:479:11) at Query.handleReadyForQuery (/koop/node_modules/koop-server/node_modules/pg/lib/query.js:84:10) at null. (/koop/node_modules/koop-server/node_modules/pg/lib/client.js:159:19) Program node server.js exited with code 8

I also looked at the postgres DB log, and I seeing whole bunch of something like following.

ERROR: relation "Github:chelm/geodata/us-states:0" does not exist at character 13 STATEMENT: insert into "Github:chelm/geodata/us-states:0" (feature, geom) VALUES ('{"type":"Feature","id":"50","properties":{"name":"Vermont"},"geometry":{"type":"Polygon","coordinates":[[[-71.503554,45.013027],[-71.4926,44.914442],[-71.629524,44.750133],[-71.536416,44.585825],[-71.700724,44.41604],[-72.034817,44.322932],[-72.02934,44.07647],[-72.116971,43.994316],[-72.204602,43.769761],[-72.379864,43.572591],[-72.456542,43.150867],[-72.445588,43.008466],[-72.533219,42.953697],[-72.544173,42.80582],[-72.456542,42.729142],[-73.267129,42.745573],[-73.278083,42.833204],[-73.245221,43.523299],[-73.404052,43.687607],[-73.349283,43.769761],[-73.436914,44.043608],[-73.321898,44.246255],[-73.294514,44.437948],[-73.387622,44.618687],[-73.332852,44.804903],[-73.343806,45.013027],[-72.308664,45.002073],[-71.503554,45.013027]]]}}', ST_GeographyFromText(ST_AsText(ST_GeomFromGeoJSON('{"type":"Polygon","coordinates":[[[-71.503554,45.013027],[-71.4926,44.914442],[-71.629524,44.750133],[-71.536416,44.585825],[-71.700724,44.41604],[-72.034817,44.322932],[-72.02934,44.07647],[-72.116971,43.994316],[-72.204602,43.769761],[-72.379864,43.572591],[-72.456542,43.150867],[-72.445588,43.008466],[-72.533219,42.953697],[-72.544173,42.80582],[-72.456542,42.729142],[-73.267129,42.745573],[-73.278083,42.833204],[-73.245221,43.523299],[-73.404052,43.687607],[-73.349283,43.769761],[-73.436914,44.043608],[-73.321898,44.246255],[-73.294514,44.437948],[-73.387622,44.618687],[-73.332852,44.804903],[-73.343806,45.013027],[-72.308664,45.002073],[-71.503554,45.013027]]]}'))));

soichih commented 10 years ago

I thought I got this problem fixed (after installing more proper postgis instance), but now I am back at this issue again - with the latest koop/koop-github, and postgis DB with postgis extension installed.

ungoldman commented 8 years ago

I believe this has been resolved. Try the latest version (2.0.0).