omniscale / imposm3 Goto Github PK
View Code? Open in Web Editor NEWImposm imports OpenStreetMap data into PostGIS
Home Page: http://imposm.org/docs/imposm3/latest/
License: Apache License 2.0
Imposm imports OpenStreetMap data into PostGIS
Home Page: http://imposm.org/docs/imposm3/latest/
License: Apache License 2.0
First of all, i'm sorry for my primitive English. I think that you can extremely improve imposm3 cache via replacement HyperLevelDB to LMDB.
LMDB official: http://symas.com/mdb/
Benchmarks: http://symas.com/mdb/hyperdex/, http://symas.com/mdb/hyperdex2/
GO wrapper for LMDB: https://github.com/szferi/gomdb (it's ugly than levigo)
GO is not my favorite language, so it's difficult for me to check it & submit a pull request. I think that this replacement is a chance to speed up your FTL import.
Have a nice day.
Hello.
I noticed some buggy behavior when using -appendcache to import multiple files. Motorways seem to be partly missing, other stuff too. Only the last file read is correct, for the first ones the cache seems to get corrupted.
I need Europe, GCC and Canary Islands, but for now, I can only import Europe without broken roads and stuff.
Hello,
all water areas, like Bodensee or Müritz, are drawn. But the Balaton (german Plattensee) isn't. In JOSM it is drawn, in Mapnik too. But MapServer itself don't. Is there a problem in converting polygons or lines (tested with both - no success)?
Is there a problem in the polygon or not? Please help :-)
Map file section:
LAYER
TYPE POLYGON
STATUS ON
METADATA
"wms_srs" "OSM_WMS_SRS"
"wms_title" "Water"
"wms_group_title" "Water"
END
PROJECTION
"init=epsg:OSM_SRID"
END
NAME layername(waterarea,_layer_suffix)
GROUP "water"
CONNECTIONTYPE POSTGIS
CONNECTION "OSM_DB_CONNECTION"
DATA _waterarea_data
MAXSCALEDENOM _maxscale
MINSCALEDENOM _minscale
PROCESSING "CLOSE_CONNECTION=DEFER"
LABELITEM "name"
CLASSITEM "type"
CLASS
EXPRESSION "riverbank"
STYLE
COLOR _waterarea_clr
OUTLINECOLOR _waterarea_ol_clr
OUTLINEWIDTH _waterarea_ol_width
END
END
CLASS
STYLE
COLOR _waterarea_clr
OUTLINECOLOR _waterarea_ol_clr
OUTLINEWIDTH _waterarea_ol_width
END
LABEL
TYPE TRUETYPE
PARTIALS FALSE
FONT _waterarea_font
MINDISTANCE 200
SIZE _waterarea_lbl_size
COLOR _waterarea_lbl_clr
ENCODING "utf-8"
OUTLINECOLOR _waterarea_lbl_ol_clr
OUTLINEWIDTH _waterarea_lbl_ol_width
WRAP ' '
MAXLENGTH 5
ALIGN CENTER
MINFEATURESIZE AUTO
PRIORITY _label_priority_landusage
END
END
END
Custom generate_style.py from Mapserver basemaps:
##### water #####
'display_waterarea': {
0:0,
6:1
},
'waterarea_data': {
0: '"geometry from (select geometry,osm_id ,OSM_NAME_COLUMN as name,type from OSM_PREFIX_waterareas_gen0) as foo using unique osm_id using srid=OSM_SRID"',
9: '"geometry from (select geometry,osm_id ,OSM_NAME_COLUMN as name,type from OSM_PREFIX_waterareas_gen1) as foo using unique osm_id using srid=OSM_SRID"',
12: '"geometry from (select geometry,osm_id ,OSM_NAME_COLUMN as name,type from OSM_PREFIX_waterareas) as foo using unique osm_id using srid=OSM_SRID"'
},
'display_waterarea_lbl' : {0:0, 10:1},
'waterarea_clr': '"#B3D1FF"',
'waterarea_ol_clr': '"#B3D1FF"',
'waterarea_ol_width': 0,
'waterarea_font': "sc",
'waterarea_lbl_size': 10,
'waterarea_lbl_clr': '"#6B94B0"',
'waterarea_lbl_ol_clr': "255 255 255",
'waterarea_lbl_ol_width': 2,
Kind regards
osm2pgsql
allows wildcards in the list of tags to drop, e.g. tiger:*
. Based on my reading of mapping/config.go
, there's no equivalent way of defining them here, though it would be nice. Same syntax would be nice (it's concise), but this could also work (borrowing from type_mappings
):
{
...
"exclude": [
{ "tiger": ["__any__"] }
]
}
Route relations could be supported as multilinestring.
In Postgis terms, it would be equivalent to a ST_LineMerge().
Currently it seems imposm3 will ignore multipolygons that don't meet the current spec:
http://wiki.openstreetmap.org/wiki/Multipolygon_Examples
It looks like other import tools attempt to fix invalid multipolygons, of which there are many, into a usable state (see http://wiki.openstreetmap.org/wiki/Osmium/Multipolygon)
In my experience there can be some funkiness with missing riverbanks after imposm3 imports. I was wondering if the imposm3 authors and other users are interested in more forgiving multipolygon support (with the tradeoff being, a messier implementation).
Since I want to set up a toolchain that doesn't require osmosis to create changesets, I am writing this down as an issue to have imposm3 handle the changes from the planet diffs directly.
This breaks https://github.com/mapserver/basemaps
Adding:
"railways" : {
"fields": [
{
"type": "id",
"name": "osm_id",
"key": null
},
{
"type": "geometry",
"name": "geometry",
"key": null
},
{
"type": "string",
"name": "name",
"key": "name"
},
{
"type": "mapping_value",
"name": "type",
"key": null
},
{
"type": "boolint",
"name": "tunnel",
"key": null
},
{
"type": "boolint",
"name": "bridge",
"key": null
},
{
"type": "string",
"name": "ref",
"key": null
}
],
"type": "linestring",
"mapping": {
"railway": [
"rail",
"abandoned",
"tram",
"light_rail",
"subway",
"narrow_gauge",
"preserved",
"funicular",
"monorail"
]
}
},
to example-mapping.json will fix this.
While creating geospatial indexes, imposm3 prints which index was created, and how long it took to create it.
It would be nice if first printed which index was being created. Some indexes can take minutes (or hours) and it would be nice to know what is actually being done.
[INFO] Timestamp: Adding index to ...
[INFO] Timestamp: Index created on ... in ... seconds
In the mapping file example, each column have one key. Only on the mapping there are options to include for more than one key. Is there any way to include more than one key for one column for example like;
.....
},
{ "type": "string",
"name": "startdate",
"key": [ "start_date", "start"
]
},
{......
Europe is already in my postgres db.
I use diff
I run for europe:
imposm3 diff
-cachedir='/home/xxx/cachedir'
-diffdir='/home/xxx/diffdir'
-mapping='/home/xxx/mapping_imposm3.json'
-connection postgis://xxx:xxx@xxx/osm_europe?sslmode=disable
The "Parsing changes, updating cache and removing elements" section took about 2hrs.
But the "Writing added/modified elements" section takes about 6 to 8 hrs.
Is that normal time behavior ?
I use Debian 7 ("wheezy") with 8GB ram / Intel(R) Core(TM) i7 CPU / 920 @ 2.67GHz
Hello,
I'm working on map renderer and a lot of data processing happens when data is already imported. One of features i really like to see - is hstore column with all tags of some geometry.
Is it possible to add field type "tags_hstore" or something like that to conserve all tags from original data?
With the current version checked out (3affe43) there is a reproducible error while importing into database.
[Jan 8 19:01:18] [INFO] removing existing cache /tmp/imposm3
[Jan 8 19:01:19] [INFO] [ 0] C: 0/s (12505) N: 0/s (6155) W: 0/s (0) R: 0/s (0)
[Jan 8 19:01:19] [INFO] Reading OSM data took: 654.879869ms
[Jan 8 19:01:22] [PostGIS] SQL Error: sql: expected 0 arguments, got 5 in query COPY "import"."osm_transport_points" ("osm_id", "geometry", "name", "type", "ref")
FROM STDIN ([11206066 0 101000020110F0000A6B69605BB063141AC99AE72B4065B41 Hammerbrook station ])
When going back to 2d1c980, the problem doesn't come up any more.
Running Debian 7 and Go 1.2.
With the lastest imposm3
I have downloaded andorra datum 2014-07-02 and this osc.gz / state.txt from geofabrik.
FIRST I do an import of andorra datum 2014-07-01 20:22:02 (this 'state' is 481)
command =
imposm3 import
-connection postgis://[user]:[ww]@[pc]/[database]?sslmode=disable
-overwritecache
-mapping mapping_imposm3.json
-read andorra-140701.osm.pbf
-diff
-write
-deployproduction
log =
[Sep 15 14:12:45] [INFO] removing existing cache /tmp/imposm3
[Sep 15 14:12:45] [INFO] [reader] reading andorra-140701.osm.pbf with data till 2014-07-01 20:22:02 +0000 UTC
[Sep 15 14:12:46] [INFO] [ 0] C: 0/s (85082) N: 0/s (0) W: 0/s (3616) R: 0/s (13)
[Sep 15 14:12:47] [INFO] [ 1s] C: 0/s ( 0.0%) N: 0/s (0) W: 0/s (100.0%) R: 0/s (100.0%)
...
[Sep 15 14:12:50] [INFO] [PostGIS] Rotating tables took: 83.570506ms
[Sep 15 14:12:51] [INFO] Imposm took: 18.741696841s
Then I try to add a diff (I have downloaded the osc.gz and the state.txt file. The last.state.txt is the 481.state.txt )
command =
imposm3 diff
-connection postgis://[user]:[ww]@[pc]/[database]?sslmode=disable
-mapping mapping_imposm3.json
deltas/482.osc.gz
log =
[Sep 15 14:14:00] [WARN] [diff] Diff #482 from 2014-07-02 20:22:01 +0000 UTC already imported
And thats not possible, the latest date is 2014-07-01 20:22:02 (see import)
What Do I wrong ?
Kind regards,
Benjamin
Is it possible to add the ability to save in a separate table relations (members IDs and roles)? This would give the opportunity to add addressing, which is stored in relation street/associatedStreet for example
Probably the "string_suffixreplace" mapping is not working with the current YAML version.
Switched to branch 'master'
Your branch is up-to-date with 'upstream/master'.
+ test
+ rm -f imposm3
+ go build -a
+ /go/src/github.com/omniscale/imposm3/imposm3 import -mapping ../road.json -read ./parser/pbf/monaco-20150428.osm.pbf -diff -write -optimize -overwritecache -deployproduction -connection postgis://localhost/imposm3dev
[Sep 7 09:41:36] [INFO] [mapping] suffixes in args for string_suffixreplace not a dict
[Sep 7 09:41:36] [INFO] removing existing cache /tmp/imposm3
[Sep 7 09:41:36] [INFO] [reader] reading ./parser/pbf/monaco-20150428.osm.pbf with data till 2015-04-27 22:21:02 +0200 CEST
[Sep 7 09:41:36] [INFO] [ 0] C: 0/s (17233) N: 0/s (0) W: 0/s (2398) R: 0/s (10)
[Sep 7 09:41:36] [INFO] Reading OSM data took: 335.649512ms
[Sep 7 09:41:36] [INFO] [mapping] suffixes in args for string_suffixreplace not a dict
[Sep 7 09:41:36] [WARN] [mapping] unhandled type:string_suffixreplace
[Sep 7 09:41:36] pq: extra data after last expected column
And the old version - with same mapping file :
HEAD is now at 063730b... document licenses of all dependencies
+ test
+ rm -f imposm3
+ go build -a
+ /go/src/github.com/omniscale/imposm3/imposm3 import -mapping ../road.json -read ./parser/pbf/monaco-20150428.osm.pbf -diff -write -optimize -overwritecache -deployproduction -connection postgis://localhost/imposm3dev
[Sep 7 09:41:31] [INFO] removing existing cache /tmp/imposm3
[Sep 7 09:41:31] [INFO] [reader] reading ./parser/pbf/monaco-20150428.osm.pbf with data till 2015-04-27 22:21:02 +0200 CEST
[Sep 7 09:41:32] [INFO] [ 0] C: 0/s (17233) N: 0/s (0) W: 0/s (2398) R: 0/s (10)
[Sep 7 09:41:32] [INFO] Reading OSM data took: 346.669101ms
[Sep 7 09:41:32] [INFO] [ 0] C: 0/s ( 0.0%) N: 0/s (0) W: 0/s (100.0%) R: 0/s (100.0%)
[Sep 7 09:41:32] [INFO] Writing OSM data took: 428.02331ms
[Sep 7 09:41:32] [INFO] [PostGIS] Creating generalized tables took: 65.023µs
[Sep 7 09:41:32] [INFO] [PostGIS] Creating OSM id index on osm_example_suffixreplace took: 24.144912ms
[Sep 7 09:41:32] [INFO] [PostGIS] Creating geometry indices took: 24.441639ms
[Sep 7 09:41:32] [INFO] Importing OSM data took: 452.73886ms
[Sep 7 09:41:32] [INFO] [PostGIS] Analysing osm_example_suffixreplace took: 5.663989ms
[Sep 7 09:41:32] [INFO] [PostGIS] Clustering on geometry took: 6.174443ms
[Sep 7 09:41:32] [INFO] [PostGIS] Rotating osm_example_suffixreplace from import -> public -> backup
[Sep 7 09:41:32] [INFO] [PostGIS] backup of osm_example_suffixreplace, to backup
[Sep 7 09:41:32] [INFO] [PostGIS] Rotating tables took: 12.06423ms
[Sep 7 09:41:32] [INFO] Imposm took: 907.873425ms
see full log and testfiles : https://gist.github.com/ImreSamu/02f82061268c52141ca6
I personally consider config files are much easier to be written in yaml than in json, so I think supporting yaml for mapping file would be very handy.
If you think it's worth it, I may have a try on it (I don't know go, but that would be certainly simple enough to be a good occasion to hack a bit ;) ).
Hi,
Would love to have an equivalent functionality to imposm2 for support of --table-prefix.
With imposm2 i could use postgis:///mapnik to use the unix socket. But:
bin/imposm3 import -mapping mapping.json -connection postgis:///mapnik -write
gives me:
pq: password authentication failed for user "mapnik"
It does not seem possible to specify a socket path directly using the URL syntax, because lib/pq splits the host name after the first slash. (e.g. you cannot write "postgis:///var/run/postgresql/mapnik")
So i tried the following:
PG_HOST=/var/run/postgresql bin/imposm3 import -mapping mapping.json -connection "postgis:///mapnik" -write
but still:
pq: password authentication failed for user "mapnik"
I am not a go expert, but is there a way to tell imposm (or lib/pq) to not use password auth?
With the following field definition it is possible to add the osm_id.
{
"type": "id",
"name": "osm_id",
"key": null
}
If you try to find the original element in the database you have a problem if your table contains polygons. The ids can be either a way or a relation. it is not possible to find out which element is the correct one. The best way is to implement a new field-type for adding a new column. Also helpful in some cases are field-types for the version number of the elements.
There are a workaround to create tables which only contain closed ways or realtions anstead of polygons?
Hello,
I want to map a string (bridge) to zorder mapping. But with that code it maps bridge to seperate class. Class should as it is and bridge column should have the zorder mapping. How to do that?
Moving bridge mapping from "mappings" to "mapping" will create seperate row with class='yes' and type=bridge, but the bridge column is in zorder style. Mappings without bridge column defined will ignore the ranks.
"roads": {
"fields": [
{
"type": "id",
"name": "osm_id",
"key": null
},
{
"type": "mapping_value",
"name": "type",
"key": null
},
{
"type": "mapping_key",
"name": "class",
"key": null
},
{
"type": "geometry",
"name": "geometry",
"key": null
},
{
"type": "string",
"name": "name",
"key": "name"
},
{
"type": "string",
"name": "name:de",
"key": "name:de"
},
{
"type": "string",
"name": "name:en",
"key": "name:en"
},
{
"type": "string",
"name": "int_name",
"key": "int_name"
},
{
"type": "string",
"name": "ref",
"key": "ref"
},
{
"args": {
"ranks": [
"yes",
"aqueduct",
"boardwalk",
"cantilever",
"covered",
"low_water_crossing",
"movable",
"trestle",
"viaduct"
]
},
"type": "zorder",
"name": "bridge",
"key": "bridge"
},
{
"type": "string",
"name": "bicycle",
"key": "bicycle"
},
{
"type": "string",
"name": "covered",
"key": "covered"
},
{
"type": "string",
"name": "construction",
"key": "construction"
},
{
"type": "string",
"name": "foot",
"key": "foot"
},
{
"type": "string",
"name": "horse",
"key": "horse"
},
{
"type": "string",
"name": "junction",
"key": "junction"
},
{
"type": "integer",
"name": "layer",
"key": "layer"
},
{
"type": "direction",
"name": "oneway",
"key": "oneway"
},
{
"type": "string",
"name": "route",
"key": "route"
},
{
"type": "string",
"name": "tunnel",
"key": "tunnel"
},
{
"type": "string",
"name": "access",
"key": "access"
},
{
"type": "string",
"name": "service",
"key": "service"
},
{
"type": "string",
"name": "surface",
"key": "surface"
},
{
"type": "string",
"name": "tracktype",
"key": "tracktype"
},
{
"type": "pseudoarea",
"name": "area",
"key": null
},
{
"type": "wayzorder",
"name": "z_order",
"key": "layer"
}
],
"filters": {
"exclude_tags": [
[
"area",
"yes"
]
]
},
"mappings": {
"roads": {
"mapping": {
"aeroway": [
"runway",
"taxiway"
],
"bridge": [
"yes",
"aqueduct",
"boardwalk",
"cantilever",
"covered",
"low_water_crossing",
"movable",
"trestle",
"viaduct"
],
"highway": [
"bridleway",
"construction",
"cycleway",
"footway",
"living_street",
"motorway",
"motorway_link",
"path",
"pedestrian",
"platform",
"primary",
"primary_link",
"raceway",
"residential",
"road",
"secondary",
"secondary_link",
"service",
"steps",
"tertiary",
"tertiary_link",
"track",
"trunk",
"trunk_link",
"unclassified"
],
"service": [
"driveway",
"drive-through",
"parking_aisle",
"siding",
"spur",
"yard"
],
"surface": [
"unpaved",
"compacted",
"dirt",
"earth",
"fine_gravel",
"grass",
"grass_paver",
"gravel",
"ground",
"mud",
"pebblestone",
"salt",
"sand",
"woodchips",
"clay"
],
"railway": [
"disused",
"funicular",
"light_rail",
"monorail",
"narrow_gauge",
"platform",
"preserved",
"rail",
"subway",
"tram"
],
"route": [
"ferry"
]
}
}
},
"type": "linestring"
},
Failed installation on Debian GNU/Linux 7
go get github.com/omniscale/imposm3
package github.com/omniscale/imposm3 imports code.google.com/p/goprotobuf/proto: unable to detect version control system for code.google.com/ path
How can I fix this ?
Imported whole planet today. Last entry was below:
[Sep 14 17:31:26] Importing OSM data took: 5h50m35.894984255s
[Sep 14 17:31:30] [PostGIS] Indexing osm_aeroways on geohash took: 3.462870059s
[Sep 14 17:31:40] [PostGIS] Clustering osm_aeroways on geohash took: 9.913250879s
[Sep 14 17:31:52] [PostGIS] Indexing osm_amenities on geohash took: 12.778158795s
[Sep 14 17:31:58] [PostGIS] Indexing osm_housenumbers_interpolated on geohash took: 32.316584666s
[Sep 14 17:32:11] [PostGIS] Clustering osm_amenities on geohash took: 18.777732759s
[Sep 14 17:32:38] [PostGIS] Clustering osm_housenumbers_interpolated on geohash took: 39.538955536s
[Sep 14 17:33:11] [PostGIS] Indexing osm_admin on geohash took: 1m44.931192332s
[Sep 14 17:33:11] [PostGIS] Indexing osm_barrierpoints on geohash took: 33.368876128s
[Sep 14 17:33:32] [PostGIS] Clustering osm_barrierpoints on geohash took: 20.554198242s
[Sep 14 17:33:37] [PostGIS] Indexing osm_places on geohash took: 5.018755772s
[Sep 14 17:33:37] [PostGIS] Clustering on geometry took: 2m10.798900936s
[Sep 14 17:33:37] pq: S:"ERROR" C:"XX000" M:"transform: couldn't project point (-0.00460936 nan 0): failed to load NAD27-83 correction file (-38)" H:"PostGIS was unable to transform the point because either no grid shift files were found, or the point does not lie within the range for which the grid shift is defined. Refer to the ST_Transform() section of the PostGIS manual for details on how to configure PostGIS to alter this behaviour." F:"lwgeom_transform.c" L:"1058" R:"transform_point"
Is import successfully finished or not?
...
[Jan 14 03:23:27] [21m53s] C: 0/s 0/s ( 0.0%) N: 0/s 0/s ( 0.0%) W: 0/s 0/s ( 0.0%) R: 560/s 390/s[Jan 14 03:23:27] [21m53s] C: 0/s 0/s ( 0.0%) N: 0/s 0/s ( 0.0%) W: 0/s 0/s ( 0.0%) R: 560/s 320/s
panic: runtime error: index out of range
goroutine 63 [running]:
runtime.panic(0x7b2c60, 0xe8ed97)
/home/os/go/src/pkg/runtime/panic.c:266 +0xb6
imposm3/geom.mergeRings(0xc213f4bf40, 0x5, 0x8, 0x4, 0x1, ...)
/home/os/imposm/src/imposm3/geom/ring.go:85 +0x1b00
imposm3/geom.BuildRings(0xc2100b1360, 0x0, 0x0, 0x0, 0x0, ...)
/home/os/imposm/src/imposm3/geom/multipolygon.go:97 +0x4bc
imposm3/geom.PrepareRelation(0xc2100b1360, 0xf11, 0x0, 0x0, 0x0)
/home/os/imposm/src/imposm3/geom/multipolygon.go:32 +0x27
imposm3/writer.(_RelationWriter).loop(0xc216d15d20)
/home/os/imposm/src/imposm3/writer/relations.go:74 +0x2f1
created by imposm3/writer.(_OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
command line:
./imposm3 import -cachedir /ssd_cache -connection postgis://xyz:abc@localhost:5432/import -mapping "mapping.json" -read /osm.pbf -write -appendcache -srid 4326
I am using imposm2 to import osm data to postgresql database but recently moved to imposm3 which is still in development phase I want to know is there an easy way to convert imposm2 mapping file (python) to imposm3 mapping file (json) ?
We encountered a problem with large integer values while importing building:levels
as an int.
Examples:
building:levels=0 (ok)
building:levels=40 (ok)
building:levels=a (ok, value is being discarded)
building:levels=19082139812039812093908123 (ok, value is being discarded because it's bigger than 2^64)
So far, so good. But the following fails:
building:levels=1000000000000000000
The value is > 2^32 but < 2^64, so it is parsed successfully into cache, but it fails while being imported into Postgres, because the data field is a 32 bit integer.
Corresponding line in source: https://github.com/omniscale/imposm3/blob/master/mapping/fields.go#L23
I am not sure, which strategy is best a this point. One possibility is setting the int type as int64 in PostgreSQL, which would obviously lead to an increased memory consumption.
The second option is adding an additional, explicit int64, which would be 64 bit in the application as well as in PostgreSQL.
The third option (which I find best) is declaring it int32 in both imposm and PostgreSQL. Bigger values would be treated as invalid values.
Hello,
I'm working on a conversion of the OSM CartoCSS style (with YAML). But I've some problems, maybe it's related to import error? Look at the image please.
Info: Hannover / Bemerode (Germany)
A road should be a LINESTRING and not an area so maybe there is a problem regarding the geometry of many roads or with IMPOSM3?
I just thought I would leave a note here for others who may have this issue building imposm3 on Fedora Core 20:
I git cloned HyperLevelDB and installed it, but for some reason it did not create leveldb symlinks, so the levigo dependency with 'go get imposm3' would fail and not be able to find "leveldb/c.h".
I looked in /usr/local/include and lo-and-behold, there was a hyperleveldb dir but no leveldb dir. So I did:
ln -s hyperleveldb leveldb
Then I needed to do the same for the libraries:
cd /usr/local/lib
ln -s hyperleveldb.so.0.0.0 leveldb.so.0.0.0
ln -s hyperleveldb.so.0.0.0 leveldb.so.0
ln -s hyperleveldb.so.0.0.0 leveldb.so
Then "go get imposm3" worked as expected.
While importing pbf data, the tag 'bicycle' (and perhaps other tags) are not imported properly into the database.
For example: the value 'no' for osm_id 239933035 resulted in a empty string in the database.
my json file below:
{"tables": {
"roads": {
"fields": [
{"type": "id", "name": "osm_id","key": null},
{"type": "geometry","name": "geometry","key": null},
{"type": "mapping_value","name": "type","key": null},
{"type": "string","name": "name","key": null},
{"type": "boolint","name": "tunnel","key": null},
{"type": "boolint","name": "bridge","key": null},
{"type": "string","name": "smoothness","key": null},
{"type": "string","name": "cycleway","key": null},
{"type": "string","name": "bicycle","key": null}
]
}
}
What is wrong ?
Thank you for your investigation.
I would like to see a standalone parsing package as in https://github.com/omniscale/imposm-parser
Is it feasible?
(use case is parsing data and metadata for analysis)
Administrative border of the country misses in the result DB
Howdy,
I am setting up a docker instance to run imposm and postgis
I thought you might be interested in this.
importing
http://download.geofabrik.de/north-america/us/kansas-latest.osm.pbf
from 2014-11-02T21:22:01Z in this command :
https://github.com/h4ck3rm1k3/docker-postgis/blob/master/splitter/north-america/us/kansas/runimport.sh
in this container :
based on imposm built here :
https://github.com/h4ck3rm1k3/docker-postgis/blob/master/imposm3/Dockerfile
based on https://github.com/h4ck3rm1k3/docker-postgis/blob/master/splitter/Dockerfile
Using this database server :https://github.com/h4ck3rm1k3/docker-postgis/blob/master/Dockerfile
I get these errors on the database backend :
2014-11-03 09:00:30 UTC [33-1] docker@routing WARNING: Could not convert 'geometry' in 'import.osm_landusages_gen1' to use typmod with srid 3857, type Polygon: Geometry type (MultiPolygon) does not match column type (Polygon)
2014-11-03 09:00:30 UTC [32-1] docker@routing WARNING: Could not convert 'geometry' in 'import.osm_waterareas_gen1' to use typmod with srid 3857, type Polygon: Geometry type (MultiPolygon) does not match column type (Polygon)
2014-11-03 09:00:33 UTC [32-2] docker@routing WARNING: Could not convert 'geometry' in 'import.osm_landusages_gen0' to use typmod with srid 3857, type Polygon: Geometry type (MultiPolygon) does not match column type (Polygon)
2014-11-03 09:00:33 UTC [33-2] docker@routing WARNING: Could not convert 'geometry' in 'import.osm_waterareas_gen0' to use typmod with srid 3857, type Polygon: Geometry type (MultiPolygon) does not match column type (Polygon)
No errors on the import :
sudo docker run -i -t --link pgroute:db osmsplitter_north-america_us_kansas /bin/bash /var/lib/splitter/north-america/us/kansas/runimport.sh
[Nov 3 08:59:18] [INFO] [reader] reading /var/lib/splitter/north-america/us/kansas/kansas-latest.osm.pbf with data till 2014-11-01 21:22:02 +0000 UTC
[Nov 3 08:59:31] [INFO] [ 12s] C: 459000/s (4111660) N: 11900/s (101148) W: 116900/s (423309) R: 0/s (1398)
[Nov 3 08:59:31] [INFO] Reading OSM data took: 14.042693849s
[Nov 3 09:00:28] [INFO] Writing OSM data took: 56.737238561s
[Nov 3 09:00:28] [INFO] [ 56s] C: 0/s ( 0.0%) N: 17100/s (100.0%) W: 11100/s (100.0%) R: 1200/s (100.0%)
[Nov 3 09:00:30] [INFO] [PostGIS] Generalizing osm_landusages into osm_landusages_gen1 took: 1.922886368s
[Nov 3 09:00:30] [INFO] [PostGIS] Generalizing osm_waterareas into osm_waterareas_gen1 took: 2.302896905s
[Nov 3 09:00:31] [INFO] [PostGIS] Generalizing osm_waterways into osm_waterways_gen1 took: 3.18118259s
[Nov 3 09:00:32] [INFO] [PostGIS] Generalizing osm_roads into osm_roads_gen1 took: 4.157985867s
[Nov 3 09:00:33] [INFO] [PostGIS] Generalizing osm_landusages into osm_landusages_gen0 took: 453.898759ms
[Nov 3 09:00:33] [INFO] [PostGIS] Generalizing osm_waterareas into osm_waterareas_gen0 took: 731.503489ms
[Nov 3 09:00:34] [INFO] [PostGIS] Generalizing osm_waterways into osm_waterways_gen0 took: 1.342761914s
[Nov 3 09:00:34] [INFO] [PostGIS] Generalizing osm_roads into osm_roads_gen0 took: 1.632728236s
[Nov 3 09:00:34] [INFO] [PostGIS] Creating generalized tables took: 5.790997736s
[Nov 3 09:00:34] [INFO] [PostGIS] Creating OSM id index on osm_aeroways took: 230.879345ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating OSM id index on osm_admin took: 241.486531ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating OSM id index on osm_places took: 286.035037ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating OSM id index on osm_landusages took: 286.355584ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating OSM id index on osm_waterareas took: 286.557933ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating OSM id index on osm_barrierpoints took: 286.460844ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating OSM id index on osm_barrierways took: 286.986406ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating geometry index on osm_admin took: 57.560808ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating geometry index on osm_aeroways took: 69.354566ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating geometry index on osm_places took: 114.842205ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating geometry index on osm_barrierways took: 141.705018ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating OSM id index on osm_transport_areas took: 130.788944ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating geometry index on osm_waterareas took: 145.772625ms
[Nov 3 09:00:34] [INFO] [PostGIS] Creating geometry index on osm_barrierpoints took: 147.23383ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating geometry index on osm_transport_areas took: 161.075767ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating OSM id index on osm_transport_points took: 312.624297ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating OSM id index on osm_buildings took: 489.033558ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating OSM id index on osm_housenumbers_interpolated took: 487.70113ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating OSM id index on osm_housenumbers took: 622.170667ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating geometry index on osm_landusages took: 636.430073ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating OSM id index on osm_amenities took: 494.578158ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating geometry index on osm_transport_points took: 268.434797ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating OSM id index on osm_waterways took: 389.832715ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating geometry index on osm_waterways took: 219.083402ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating geometry index on osm_housenumbers_interpolated took: 279.650344ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating OSM id index on osm_landusages_gen0 took: 350.92288ms
[Nov 3 09:00:35] [INFO] [PostGIS] Creating geometry index on osm_amenities took: 560.321394ms
[Nov 3 09:00:36] [INFO] [PostGIS] Creating OSM id index on osm_landusages_gen1 took: 1.334473201s
[Nov 3 09:00:36] [INFO] [PostGIS] Creating geometry index on osm_landusages_gen0 took: 922.887585ms
[Nov 3 09:00:36] [INFO] [PostGIS] Creating OSM id index on osm_waterareas_gen0 took: 1.343517614s
[Nov 3 09:00:36] [INFO] [PostGIS] Creating OSM id index on osm_roads_gen0 took: 1.062252385s
[Nov 3 09:00:36] [INFO] [PostGIS] Creating OSM id index on osm_waterareas_gen1 took: 1.344338129s
[Nov 3 09:00:37] [INFO] [PostGIS] Creating geometry index on osm_landusages_gen1 took: 399.866041ms
[Nov 3 09:00:37] [INFO] [PostGIS] Creating OSM id index on osm_roads_gen1 took: 494.987734ms
[Nov 3 09:00:37] [INFO] [PostGIS] Creating geometry index on osm_waterareas_gen1 took: 204.691613ms
[Nov 3 09:00:37] [INFO] [PostGIS] Creating geometry index on osm_waterareas_gen0 took: 207.057655ms
[Nov 3 09:00:37] [INFO] [PostGIS] Creating OSM id index on osm_roads took: 2.753701721s
[Nov 3 09:00:37] [INFO] [PostGIS] Creating OSM id index on osm_waterways_gen0 took: 540.553719ms
[Nov 3 09:00:37] [INFO] [PostGIS] Creating OSM id index on osm_waterways_gen1 took: 510.084386ms
[Nov 3 09:00:37] [INFO] [PostGIS] Creating geometry index on osm_waterways_gen0 took: 169.196429ms
[Nov 3 09:00:37] [INFO] [PostGIS] Creating geometry index on osm_waterways_gen1 took: 256.142312ms
[Nov 3 09:00:38] [INFO] [PostGIS] Creating geometry index on osm_buildings took: 3.289217304s
[Nov 3 09:00:38] [INFO] [PostGIS] Creating geometry index on osm_roads_gen0 took: 1.775864035s
[Nov 3 09:00:38] [INFO] [PostGIS] Creating geometry index on osm_roads_gen1 took: 1.569991802s
[Nov 3 09:00:39] [INFO] [PostGIS] Creating geometry index on osm_housenumbers took: 4.529998377s
[Nov 3 09:00:48] [INFO] [PostGIS] Creating geometry index on osm_roads took: 11.45576913s
[Nov 3 09:00:48] [INFO] [PostGIS] Creating geometry indices took: 14.210301828s
[Nov 3 09:00:48] [INFO] Importing OSM data took: 1m16.738773229s
[Nov 3 09:00:48] [INFO] Imposm took: 1m30.781823904s
Is it possible to output a list tiles for features that modified by an update? If not, could you suggest a way how this can be implemented?
OSM data at the poles for example will be inserted with invalid EPSG:3857 values, which will result in NaN values when transformed back to EPSG:4326 (see #2).
Hi,
is there a way to get a similar functionnality with imposm3 ?
When launching the binaries on Debian Wheezy, nothing happens, because imposm requires GLIBC_2.14, which is not (yet) available under Debian.
I can resolve the following problems by moving lib
out of the way and installing the libraries manually:
./imposm3: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by ./imposm3)
./imposm3: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by /home/gis/imposm3/lib/libgeos_c.so.1)
./imposm3: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.15' not found (required by /home/gis/imposm3/lib/libgdal.so.1)
./imposm3: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by /home/gis/imposm3/lib/libgdal.so.1)
./imposm3: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by /home/gis/imposm3/lib/libgeos-3.3.8.so)
Building imposm on Debian is problematic as well, because go get github.com/jmhodges/levigo
doesn't build at all with the provided levigo.
# github.com/jmhodges/levigo
1: error: 'leveldb_free' undeclared (first use in this function)
1: note: each undeclared identifier is reported only once for each function it appears in
The only solution I found was replacing levigo by https://github.com/jmhodges/levigo_leveldb_1.4
, which is rather a workaround than a solution.
Another problem appears when installing imposm3/geom/ogr
:
go get imposm3
# imposm3/geom/ogr
ogr.go:4:21: fatal error: ogr_api.h: No such file or directory
compilation terminated.
Even though I have installed gdal with all the libraries (gdal-bin and libgdal-dev), the library is still missing.
Would be very nice, if there would be a solution to make it compatible with the unreasonably old packages of Debian.
When importing for example germany (or any big dataset like europe), I get an 'connection' error. The relations are done correctly, Imposm3 crashes afther reading the Ways (100.0%)
[Jun 30 15:56:07] [1h4m33s]
C: 0/s 0/s ( 0.0%)
N: 0/s 0/s (0)
W: 13200/s 0/s (100.0%)
R: 340/s 0/s (100.0%)
Any idee ? I am running the script again while putting the error in a txt file. Within one hour I will reply on that.
Thanks
I am testing imposm3 with a small planet from http://planet.openstreetmap.nl/curacao/planet-curacao-131115.osm.pbf
Using:
bin/imposm3 import -connection postgis://postgres:postgres@localhost/imposm3 -mapping example-mapping.json -read planet-curacao-131115.osm.pbf -write=true -overwritecache
The error I get is:
[Nov 16 00:35:38] [PostGIS] SQL Error: sql: expected 0 arguments, got 4 in query COPY "import"."osm_buildings" ("osm_id", "geometry", "name", "type") FROM STDIN ([-3211470 0106000020110F00000400000001030000000100000011000000EB4BF1A965425DC104CF970360BE344128852A7E64425DC15D7E5BEB64BE34415B98516163425DC168AB90D569BE34415AB1233662425DC157DDED396FBE34417A78263761425DC1C73A7CD674BE34413587797460425DC1AA33C1EA7ABE34419F2941D05F425DC1333D2E7981BE34415BA632105D425DC14B7208B97DBE34412BE8D75A5D425DC1BA851C5778BE3441ABBDF1C35D425DC16B1D8EBA72BE344154674E4A5E425DC1FE5E0F486EBE3441BFF043D15E425DC12931474D6ABE3441A94F53C15F425DC1CF02126365BE344147D39D5660425DC1156C00E061BE3441C453EB9161425DC19254CBF55CBE3441957CBE0763425DC1CB39519657BE3441EB4BF1A965425DC104CF970360BE344101030000000100000007000000FDD797D661425DC112719FC957BE34415FC2EB435F425DC1DEE9CA9462BE344181F78F5557425DC1AA95A85144BE34414D364B3359425DC1D4ADDB7B3CBE34411ECDB99D5D425DC11F0368564DBE3441F2A3AA525E425DC10A0B0A614ABE3441FDD797D661425DC112719FC957BE344101030000000100000011000000FA424F7A5C425DC1108A561671BE3441FA424F7A5C425DC104EAF8EF76BE34415FFBFE3D5C425DC1EFFAD26D7EBE3441AB2B90C65B425DC12EBA3BE985BE34415E14D1125B425DC1957A4BB28CBE34413FBB6C145A425DC12A352A4393BE34415F826F1559425DC13A946F5799BE344124B7D44358425DC191BADA8C9DBE3441304B853756425DC1664C813B97BE34417D6244EB56425DC14614A91692BE344172E765CC57425DC19AEBA8778CBE3441FD1E8C7F58425DC1E1441ADB86BE344173CE93F758425DC1333D2E7981BE344139EA265159425DC1E21C68387ABE34411C78F07D59425DC1F9290FE773BE34411C78F07D59425DC118866A5371BE3441FA424F7A5C425DC1108A561671BE3441010300000001000000120000005FFBFE3D5C425DC1204DB6956DBE344139EA265159425DC1AC5A23856EBE3441575C5D2459425DC161B07C9869BE3441A48CEEAC58425DC17AF7234763BE34414B4F1D0858425DC13E52CD4E5FBE34414EA4E93557425DC165CA3A9F5ABE34412625734656425DC133464F3D55BE3441A6682BB254425DC11353AD634FBE3441A5FA8CAF56425DC150989C4146BE34418E599C9F57425DC1B2691FC749BE3441116BB06158425DC1B358D3844DBE34414310394259425DC1F5D5966C52BE3441520791F659425DC11A47BC2C56BE3441A21E50AA5A425DC165CA3A9F5ABE34412E56765D5B425DC104CF970360BE3441AB2B90C65B425DC15D87C8DA65BE34417D6D35115C425DC12931474D6ABE34415FFBFE3D5C425DC1204DB6956DBE3441 Bloempot Shopping Centre yes])
This obviously isn't a priority issue, but having a progress tick for the generalizing operation would be more in line with the rest of the process.
In any case, thanks a lot for this!
When two relations (R1 and R2) share the same way (W1) and R1 changes, R2 will be inserted a second time.
Cause: W1 gets removed and re-processed when R1 changes, because it might now be redundant (e.g. if R1 now has the same tags as W1). When W1 is processed again, it forces the reinsert of R1 and R2. R2 is then inserted a second time since R2 was not removed in the first step.
I tried the hstore patches from runaum and it seems to only import those tags that are added as fields anyway. I would like to implement a way to select which tags go into the hstore column. Do you have a suggestion how this can be done?
Following the installation instructions in the README results in an error:
$ go get github.com/omniscale/imposm3
package code.google.com/p/goprotobuf/proto: unable to detect version control system for code.google.com/ path
This is mentioned in #49, but I thought it ought to be a separate issue.
Hi,
is it currently to unify multiple keys into one column? 'mappings' is only for alternative entity classes if I understood correctly. For example there is wild use to tag colors for Simple-3D-Buildings at the moment which would be nice to be put into one column (of course it would be better to clean up the data in OSM):
building:colour (94 662)
building:color (6 926)
colour in combination with building (3000)
color in combination with building (2500)
roof:colour (~150000)
building:roof:colour (~10000)
roof:color (~10000)
building:roof:color (~100)
I'm trying to import lake polygons from planet-latest.osm.pbf and imposm3 is crashing. However, the crash seems to occur in the hyperleveldb lib:
[May 13 22:46:32] [INFO] [ 9m0s] C: 4654000/s (2505664000) N: 147500/s (79405754) W: 0/s (0) R: 0/s (0)
[May 13 22:47:32] [INFO] [ 10m0s] C: 4871000/s (2851332003) N: 152500/s (89280060) W: 367700/s (4632000) R: 0/s (0)
imposm3: util/env_posix.cc:361: char* leveldb::{anonymous}::PosixMmapFile::GetSegment(uint64_t): Assertion `block < segments_sz_' failed. 0/s 0/s (0)
SIGABRT: abort
PC=0x7f5b85257cc9
signal arrived during cgo execution
(https://github.com/rescrv/HyperLevelDB/blob/master/util/env_posix.cc#L361)
I am using the following command:
./imposm3 import -mapping lakes.json -read ../planet-latest.osm.pbf
And here is lakes.json:
{
"tables": {
"lakes": {
"fields": [
{
"type": "id",
"name": "osm_id",
"key": null
},
{
"type": "geometry",
"name": "geometry",
"key": null
},
{
"type": "string",
"name": "name",
"key": "name"
},
{
"type": "mapping_value",
"name": "type",
"key": null
},
{
"type": "pseudoarea",
"name": "area",
"key": null
},
{
"type": "hstore_tags",
"name": "tags",
"key": null
}
],
"type": "polygon",
"mapping": {
"landuse": [
"basin",
"reservoir"
],
"natural": [
"water"
]
}
}
},
"tags": {
"load_all": true
}
}
I checked the md5 of the pbf, and it matches what it's supposed to be.
I tried building the latest go version, but got an error on go get:
rio/tmp/build?>go get github.com/omniscale/imposm3
package github.com/omniscale/imposm3
imports code.google.com/p/goprotobuf/proto: unable to detect version control system for code.google.com/ path`
rio/tmp/build?>go install github.com/omniscale/imposm3
src/github.com/omniscale/imposm3/cache/binary/messages.pb.go:7:8: cannot find package "code.google.com/p/goprotobuf/proto" in any of:
/usr/lib/go/src/pkg/code.google.com/p/goprotobuf/proto (from $GOROOT)
/tmp/build/src/code.google.com/p/goprotobuf/proto (from $GOPATH)
I have no idea what could be wrong, any recommendations on how to proceed?
If clustering degrades over time, maybe it would be better to take "optimize" step out of import and make it a separate command, so one can optimize a database separately from import
I tried to find in the documentation how to import metadata about version number, last user, timestamp in my database schema.
Is-it possible to do that with Imposm3 ?
Thanks
first I take europe and import it with imposm3 with diff support:
imposm3 import \
-connection postgis://xxx@xxx/osm_europe?sslmode=disable \
-cachedir="/home/PBFcache" \
(cache is empty when I start to import)
-diff=true \
-mapping /home/mapping_imposm3.json \
-read /home/europe-20150515.osm.pbf \
-dbschema-import="public" \
(I do want to import directly to 'pubic')
-write \
-appendcache
(cache is empty when I start to import)
It takes about 5 hrs to insert the data.
Then I set an UNIQUE index on the column osm_id. I want to use them as unique values (what is normal, right ?)
Then I run dif 795 (next date with difs for europe-20150515.osm.pbf):
imposm3 diff \
-cachedir='/home/PBFcache' \
-diffdir='/home/PBFcache' \
-dbschema-import='public' \
-mapping='/home/mapping_imposm3.json' \
-connection postgis://xxx@xxx/osm_europe?sslmode=disable \
/home/routeyou/pbf/dif/795.osc.gz
Then I get
Germany and europe with no problems.
[Jan 19 08:24:02] [INFO] [ 1m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 320/s (14998)
[Jan 19 08:25:02] [INFO] [ 2m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 280/s (29582)
[Jan 19 08:25:54] [INFO] [GEOS] TopologyException: side location conflict at 1151586.9022556031 8339928.7713627554
[Jan 19 08:26:02] [INFO] [ 3m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 370/s (62324)
[Jan 19 08:27:02] [INFO] [ 4m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 410/s (93313)
[Jan 19 08:28:02] [INFO] [ 5m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 450/s (130175)
[Jan 19 08:29:02] [INFO] [ 6m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 530/s (184154)
[Jan 19 08:30:02] [INFO] [ 7m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 530/s (218343)
[Jan 19 08:31:02] [INFO] [ 8m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 570/s (269902)
[Jan 19 08:32:02] [INFO] [ 9m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 610/s (322619)
[Jan 19 08:33:02] [INFO] [ 10m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 600/s (353100)
[Jan 19 08:34:02] [INFO] [ 11m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 590/s (384528)
[Jan 19 08:35:02] [INFO] [ 12m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 590/s (418674)
[Jan 19 08:36:00] [INFO] [GEOS] TopologyException: side location conflict at 1262953.6463945815 5372535.5919273971
[Jan 19 08:36:02] [INFO] [ 13m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 630/s (484058)
[Jan 19 08:37:02] [INFO] [ 14m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 650/s (539353)
[Jan 19 08:38:02] [INFO] [ 15m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 670/s (599880)
[Jan 19 08:39:02] [INFO] [ 16m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 670/s (642772)
[Jan 19 08:40:02] [INFO] [ 17m0s] C: 0/s (0) N: 0/s (0) W: 0/s (0) R: 710/s (717184)
panic: runtime error: index out of range 0/s (0) N: 0/s 0/s (0) W: 0/s 0/s (0) R: 710/s 1780/s (734647)
goroutine 54 [running]:
runtime.panic(0x7b2c60, 0xe8ed97)
/home/os/go/src/pkg/runtime/panic.c:266 +0xb6
imposm3/geom.mergeRings(0xc21a0fd200, 0x5, 0x8, 0x4, 0x1, ...)
/home/os/imposm/src/imposm3/geom/ring.go:85 +0x1b00
imposm3/geom.BuildRings(0xc212090420, 0x0, 0x0, 0x0, 0x0, ...)
/home/os/imposm/src/imposm3/geom/multipolygon.go:97 +0x4bc
imposm3/geom.PrepareRelation(0xc212090420, 0xf11, 0x0, 0x0, 0x0)
/home/os/imposm/src/imposm3/geom/multipolygon.go:32 +0x27
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:74 +0x2f1
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 1 [semacquire]:
sync.runtime_Semacquire(0xc21011ac28)
/home/os/go/src/pkg/runtime/sema.goc:199 +0x30
sync.(*WaitGroup).Wait(0xc2100cc100)
/home/os/go/src/pkg/sync/waitgroup.go:127 +0x14b
imposm3/writer.(*OsmElemWriter).Wait(0xc210130e70)
/home/os/imposm/src/imposm3/writer/writer.go:61 +0x2b
imposm3/import_.Import()
/home/os/imposm/src/imposm3/import_/import.go:173 +0x15c9
imposm3/cmd.Main(0x909488)
/home/os/imposm/src/imposm3/cmd/main.go:48 +0xab9
main.main()
/home/os/imposm/src/imposm3/imposm3.go:8 +0x27
goroutine 3 [select]:
imposm3/logging.(*LogBroker).loop(0xea8ce0)
/home/os/imposm/src/imposm3/logging/logger.go:143 +0x484
created by imposm3/logging.init·1
/home/os/imposm/src/imposm3/logging/logger.go:234 +0x12c
goroutine 6 [chan receive]:
database/sql.(*DB).connectionOpener(0xc2100d7900)
/home/os/go/src/pkg/database/sql/sql.go:574 +0x3e
created by database/sql.Open
/home/os/go/src/pkg/database/sql/sql.go:436 +0x24d
goroutine 5 [syscall]:
runtime.goexit()
/home/os/go/src/pkg/runtime/proc.c:1394
goroutine 7 [select]:
imposm3/stats.(*Statistics).loop(0xc210109000)
/home/os/imposm/src/imposm3/stats/stats.go:109 +0x16b
created by imposm3/stats.NewStatsReporterWithEstimate
/home/os/imposm/src/imposm3/stats/stats.go:101 +0xcf
goroutine 9 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc210145000)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 10 [IO wait]:
net.runtime_pollWait(0x7fa4120dba40, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc21004b5a0, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc21004b5a0, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc21004b540, 0xc2100f6000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc2100cfa00, 0xc2100f6000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc2100411e0)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc2100411e0, 0xc2100b0da0, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc2100411e0, 0xc2100b0da0, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc2100411e0, 0xc2100b0da0, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc2100b0d80, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc2100b0d80, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc210120780)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 11 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc21001ec30)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 12 [IO wait]:
net.runtime_pollWait(0x7fa4120db998, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc21004b7d0, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc21004b7d0, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc21004b770, 0xc210132000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc2100cfb88, 0xc210132000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc2100f81e0)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc2100f81e0, 0xc21012f020, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc2100f81e0, 0xc21012f020, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc2100f81e0, 0xc21012f020, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21012f000, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21012f000, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc2101200a0)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 13 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc2101200f0)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 14 [IO wait]:
net.runtime_pollWait(0x7fa4120db8f0, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc21004ba00, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc21004ba00, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc21004b9a0, 0xc21011f000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc2100cfce8, 0xc21011f000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc2100f8420)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc2100f8420, 0xc21012f260, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc2100f8420, 0xc21012f260, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc2100f8420, 0xc21012f260, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21012f240, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21012f240, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc210120aa0)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 15 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc210120af0)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 16 [IO wait]:
net.runtime_pollWait(0x7fa4120db848, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc210130530, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc210130530, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc2101304d0, 0xc21010d000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc21011a3c8, 0xc21010d000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc21013f540)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc21013f540, 0xc21011b020, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc21013f540, 0xc21011b020, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc21013f540, 0xc21011b020, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21011b000, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21011b000, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc2101450a0)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 17 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc2101450f0)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 18 [IO wait]:
net.runtime_pollWait(0x7fa4120db7a0, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc21010e140, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc21010e140, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc21010e0e0, 0xc21007b000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc21010b2b0, 0xc21007b000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc21010a3c0)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc21010a3c0, 0xc21007a020, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc21010a3c0, 0xc21007a020, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc21010a3c0, 0xc21007a020, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21007a000, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21007a000, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc210120140)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 19 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc210120190)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 20 [IO wait]:
net.runtime_pollWait(0x7fa4120db6f8, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc21004bc30, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc21004bc30, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc21004bbd0, 0xc210124000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc2100cfe50, 0xc210124000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc2100f8660)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc2100f8660, 0xc21012f4a0, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc2100f8660, 0xc21012f4a0, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc2100f8660, 0xc21012f4a0, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21012f480, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21012f480, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc210120b90)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 21 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc210120be0)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 22 [IO wait]:
net.runtime_pollWait(0x7fa4120db650, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc210130680, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc210130680, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc210130620, 0xc2101b3000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc21011a528, 0xc2101b3000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc21013f7e0)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc21013f7e0, 0xc21011b260, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc21013f7e0, 0xc21011b260, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc21013f7e0, 0xc21011b260, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21011b240, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21011b240, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc210145190)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 23 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc2101451e0)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 24 [IO wait]:
net.runtime_pollWait(0x7fa4120db5a8, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc21010e290, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc21010e290, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc21010e230, 0xc2101c5000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc21010b410, 0xc2101c5000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc21010a660)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc21010a660, 0xc21007a260, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc21010a660, 0xc21007a260, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc21010a660, 0xc21007a260, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21007a240, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21007a240, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc2101201e0)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 25 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc210120230)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 26 [IO wait]:
net.runtime_pollWait(0x7fa4120db500, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc21004bd80, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc21004bd80, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc21004bd20, 0xc2101d9000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc2100cffb0, 0xc2101d9000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc2100f8960)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc2100f8960, 0xc21012f6e0, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc2100f8960, 0xc21012f6e0, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc2100f8960, 0xc21012f6e0, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21012f6c0, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21012f6c0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc210120280)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 27 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc2101202d0)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 28 [IO wait]:
net.runtime_pollWait(0x7fa4120db458, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc21004bed0, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc21004bed0, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc21004be70, 0xc2101ee000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc210128118, 0xc2101ee000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc2100f8c60)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc2100f8c60, 0xc21012fb60, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc2100f8c60, 0xc21012fb60, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc2100f8c60, 0xc21012fb60, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21012fb40, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21012fb40, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc210120320)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 29 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc210120370)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 30 [IO wait]:
net.runtime_pollWait(0x7fa4120db3b0, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc210130060, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc210130060, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc210130000, 0xc210200000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc210128280, 0xc210200000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc2100f8e40)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc2100f8e40, 0xc21012fda0, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc2100f8e40, 0xc21012fda0, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc2100f8e40, 0xc21012fda0, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21012fd80, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21012fd80, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc210120c30)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 31 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc210120000)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 32 [IO wait]:
net.runtime_pollWait(0x7fa4120db308, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc2101308b0, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc2101308b0, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc210130850, 0xc21021b000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc21011a688, 0xc21021b000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc21013fb40)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc21013fb40, 0xc21011b920, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc21013fb40, 0xc21011b920, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc21013fb40, 0xc21011b920, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21011b900, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21011b900, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc210120050)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 33 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc210129000)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 34 [IO wait]:
net.runtime_pollWait(0x7fa4120db260, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc210130ae0, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc210130ae0, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc210130a80, 0xc21022d000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc21011a7e8, 0xc21022d000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc21013fd80)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc21013fd80, 0xc21011bb60, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc21013fd80, 0xc21011bb60, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc21013fd80, 0xc21011bb60, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21011bb40, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21011bb40, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc2101290a0)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 35 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc2101290f0)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 36 [IO wait]:
net.runtime_pollWait(0x7fa4120db1b8, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc210130c30, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc210130c30, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc210130bd0, 0xc21023e000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc21011a948, 0xc21023e000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc21013f180)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc21013f180, 0xc21011bda0, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc21013f180, 0xc21011bda0, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc21013f180, 0xc21011bda0, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc21011bd80, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc21011bd80, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc210129140)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 37 [chan receive]:
imposm3/database/postgis.(*bulkTableTx).loop(0xc210129190)
/home/os/imposm/src/imposm3/database/postgis/tx.go:74 +0x49
created by imposm3/database/postgis.NewBulkTableTx
/home/os/imposm/src/imposm3/database/postgis/tx.go:38 +0xf9
goroutine 38 [IO wait]:
net.runtime_pollWait(0x7fa4120db110, 0x72, 0x0)
/home/os/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc210130d80, 0x72, 0x7fa4120d20e8, 0xb)
/home/os/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc210130d80, 0xb, 0x7fa4120d20e8)
/home/os/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc210130d20, 0xc210251000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc21011aaa8, 0xc210251000, 0x1000, 0x1000, 0x0, ...)
/home/os/go/src/pkg/net/net.go:122 +0xc5
bufio.(*Reader).fill(0xc21013f9c0)
/home/os/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).Read(0xc21013f9c0, 0xc210250020, 0x5, 0x200, 0x5, ...)
/home/os/go/src/pkg/bufio/bufio.go:159 +0x1a4
io.ReadAtLeast(0x7fa4120dbb38, 0xc21013f9c0, 0xc210250020, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:288 +0xf6
io.ReadFull(0x7fa4120dbb38, 0xc21013f9c0, 0xc210250020, 0x5, 0x200, ...)
/home/os/go/src/pkg/io/io.go:306 +0x71
github.com/lib/pq.(*conn).recvMessage(0xc210250000, 0x0, 0x0, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:544 +0x10b
github.com/lib/pq.(*conn).recv1(0xc210250000, 0x0, 0x0)
/home/os/imposm/src/github.com/lib/pq/conn.go:597 +0x27
github.com/lib/pq.(*copyin).resploop(0xc210129230)
/home/os/imposm/src/github.com/lib/pq/copy.go:106 +0x2a
created by github.com/lib/pq.(*conn).prepareCopyIn
/home/os/imposm/src/github.com/lib/pq/copy.go:76 +0x541
goroutine 39 [chan send]:
imposm3/cache.func·009()
/home/os/imposm/src/imposm3/cache/relations.go:75 +0x1ab
created by imposm3/cache.(*RelationsCache).Iter
/home/os/imposm/src/imposm3/cache/relations.go:77 +0xa7
goroutine 40 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc2160bcfc8, 0x8, 0xc2160bcfd8, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc2160bcfc8, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x1a368bd, 0xc2109e0500, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x1a368bd, 0xc2116e6500, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc216186370, 0x21, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 41 [runnable]:
imposm3/geom/geos._Cfunc_GEOSisValid_r(0x7fa314000bf0, 0x7fa31401cd98, 0x1)
imposm3/geom/geos/_obj/_cgo_defun.c:490 +0x31
imposm3/geom/geos.(*Geos).IsValid(0xc21a6c1230, 0xc218699760, 0x0)
/home/os/imposm/src/imposm3/geom/geos/geos.go:241 +0x37
imposm3/geom.BuildRelGeometry(0xc21a6bb6f0, 0xc215c7ca00, 0x36, 0x40, 0xf11, ...)
/home/os/imposm/src/imposm3/geom/multipolygon.go:204 +0xb75
imposm3/geom.(*preparedRelation).Build(0xc21ca5ec60, 0x219e34, 0xc21ca5e750, 0x0)
/home/os/imposm/src/imposm3/geom/multipolygon.go:43 +0x45
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:92 +0x49b
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 42 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc2119e37f8, 0x8, 0xc2119e3808, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc2119e37f8, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x18ad45e, 0xc2112de500, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x18ad45e, 0xc210ec1208, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc21debbbe0, 0x3, 0x3)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 43 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f809f280, 0x7fa3f808ddc0, 0xc21a1141b8, 0x8, 0xc21a1141c8, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011aba8, 0xc21011abb8, 0xc21a1141b8, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*WaysCache).GetWay(0xc21011e030, 0xd8ec23d, 0xc2102b6040, 0x30, 0xc2102b6040)
/home/os/imposm/src/imposm3/cache/ways.go:55 +0x5f
imposm3/cache.(*WaysCache).FillMembers(0xc21011e030, 0xc21a050900, 0xe, 0xe, 0x2, ...)
/home/os/imposm/src/imposm3/cache/ways.go:107 +0x101
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:47 +0xf8
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 44 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc21b6f6490, 0x8, 0xc21b6f64a0, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc21b6f6490, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x50d1, 0xc210aca500, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x50d1, 0xc210ee02d0, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc225443aa0, 0x3, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 45 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc212cade60, 0x8, 0xc212cade80, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc212cade60, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x336a48, 0xc210e44500, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x336a48, 0xc2115e5640, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc2132be460, 0x3, 0x3)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 46 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc213c6c7f8, 0x8, 0xc213c6c808, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc213c6c7f8, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x300499b, 0xc210ec6000, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x300499b, 0xc210d46280, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc21f08e460, 0xf, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 47 [syscall]:
imposm3/geom/geos._Cfunc_GEOSisValid_r(0x7fa3e4988ca0, 0x7fa3c4a190a8, 0x7fa3c4a190a8)
imposm3/geom/geos/_obj/_cgo_defun.c:490 +0x31
imposm3/geom/geos.(*Geos).IsValid(0xc213972af0, 0xc211f22b88, 0x2544)
/home/os/imposm/src/imposm3/geom/geos/geos.go:241 +0x37
imposm3/geom.BuildRelGeometry(0xc211d04cf0, 0xc222dfb000, 0x2544, 0x2e8c, 0xf11, ...)
/home/os/imposm/src/imposm3/geom/multipolygon.go:204 +0xb75
imposm3/geom.(*preparedRelation).Build(0xc215c71870, 0x1e394d, 0xc215c71840, 0x0)
/home/os/imposm/src/imposm3/geom/multipolygon.go:43 +0x45
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:92 +0x49b
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 48 [runnable]:
imposm3/geom/geos._Cfunc_GEOSPreparedContains_r(0x7fa3200013c0, 0x7fa320044b60, 0x7fa32001ccc8, 0x7fa320044b01)
imposm3/geom/geos/_obj/_cgo_defun.c:382 +0x31
imposm3/geom/geos.(*Geos).PreparedContains(0xc21dfffa30, 0xc2184f7b08, 0xc21a384c28, 0x1)
/home/os/imposm/src/imposm3/geom/geos/prepared.go:23 +0x44
imposm3/geom.BuildRelGeometry(0xc21796adb0, 0xc21e98d000, 0xd0, 0x100, 0xf11, ...)
/home/os/imposm/src/imposm3/geom/multipolygon.go:146 +0x27f
imposm3/geom.(*preparedRelation).Build(0xc214fca9f0, 0x2198a6, 0xc214fca9c0, 0x0)
/home/os/imposm/src/imposm3/geom/multipolygon.go:43 +0x45
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:92 +0x49b
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 49 [runnable]:
imposm3/geom/geos._Cfunc_GEOSPreparedContains_r(0x7fa33c000d50, 0x7fa33c08faa0, 0x7fa33c02b3b8, 0x7fa33c08fa00)
imposm3/geom/geos/_obj/_cgo_defun.c:382 +0x31
imposm3/geom/geos.(*Geos).PreparedContains(0xc2169d9ae0, 0xc210354e08, 0xc21315fe08, 0x300)
/home/os/imposm/src/imposm3/geom/geos/prepared.go:23 +0x44
imposm3/geom.BuildRelGeometry(0xc21b325540, 0xc217923000, 0x39e, 0x400, 0xf11, ...)
/home/os/imposm/src/imposm3/geom/multipolygon.go:146 +0x27f
imposm3/geom.(*preparedRelation).Build(0xc2152fbe10, 0x2199bf, 0xc2152fbde0, 0x0)
/home/os/imposm/src/imposm3/geom/multipolygon.go:43 +0x45
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:92 +0x49b
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 50 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc216543308, 0x8, 0xc216543318, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc216543308, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x1a4a835, 0xc210e70500, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x1a4a835, 0x8, 0xc211e8ba00, 0x8)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc21574ab90, 0x2, 0x2)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 51 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc218899118, 0x8, 0xc218899128, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc218899118, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0xb78790, 0xc21095aa00, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0xb78790, 0xc21125bd70, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc21a7ba910, 0xa, 0xa)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 52 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc2137842e8, 0x8, 0xc213784308, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc2137842e8, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x310acaf, 0xc210ec9a00, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x310acaf, 0xc2108b00f0, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc215e5c690, 0x2, 0x2)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 53 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc216393038, 0x8, 0xc216393048, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc216393038, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x33e76f1, 0xc2108cf500, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x33e76f1, 0x5, 0xc2195eec30, 0x5)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc2129f0b40, 0x12, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 55 [runnable]:
imposm3/geom/geos._Cfunc_GEOSPreparedContains_r(0x7fa2b0003bc0, 0x7fa2b0003d60, 0x7fa2b0003728, 0x7fa2b0003d01)
imposm3/geom/geos/_obj/_cgo_defun.c:382 +0x31
imposm3/geom/geos.(*Geos).PreparedContains(0xc225857ec0, 0xc2159ce3a0, 0xc212575e98, 0x1)
/home/os/imposm/src/imposm3/geom/geos/prepared.go:23 +0x44
imposm3/geom.BuildRelGeometry(0xc2169bebd0, 0xc21018c800, 0x79, 0x80, 0xf11, ...)
/home/os/imposm/src/imposm3/geom/multipolygon.go:146 +0x27f
imposm3/geom.(*preparedRelation).Build(0xc218685150, 0x219e31, 0xc218685120, 0x0)
/home/os/imposm/src/imposm3/geom/multipolygon.go:43 +0x45
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:92 +0x49b
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 56 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc2181ea3a0, 0x8, 0xc2181ea3b0, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc2181ea3a0, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x1972391, 0xc2116eb000, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x1972391, 0xc210a49820, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc217e5c8c0, 0x3, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 57 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc216ace460, 0x8, 0xc216ace470, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc216ace460, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x4cfb997, 0xc21093b000, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x4cfb997, 0xc210ae2a50, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc2139f2c30, 0x4, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 58 [runnable]:
imposm3/geom/geos._Cfunc_GEOSBuffer_r(0x7fa2e0414bf0, 0x7fa3aca14c68, 0x0, 0x7fa200000032, 0x7fa2ed16ef88)
imposm3/geom/geos/_obj/_cgo_defun.c:67 +0x31
imposm3/geom/geos.(*Geos).Buffer(0xc2199c32b0, 0xc21a1f56c8, 0x0, 0x2e8c)
/home/os/imposm/src/imposm3/geom/geos/ops.go:38 +0x4b
imposm3/geom.BuildRelGeometry(0xc2129a56c0, 0xc21b4ae000, 0x2546, 0x2e8c, 0xf11, ...)
/home/os/imposm/src/imposm3/geom/multipolygon.go:205 +0xbb1
imposm3/geom.(*preparedRelation).Build(0xc21cd7ff90, 0x1e38cb, 0xc21cd7ff60, 0x0)
/home/os/imposm/src/imposm3/geom/multipolygon.go:43 +0x45
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:92 +0x49b
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 59 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f809f280, 0x7fa3f808ddc0, 0xc2160c4e50, 0x8, 0xc2160c4e60, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011aba8, 0xc21011abb8, 0xc2160c4e50, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*WaysCache).GetWay(0xc21011e030, 0x47361a2, 0xc2159f8820, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/ways.go:55 +0x5f
imposm3/cache.(*WaysCache).FillMembers(0xc21011e030, 0xc217c25780, 0x4, 0x4, 0x43, ...)
/home/os/imposm/src/imposm3/cache/ways.go:107 +0x101
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:47 +0xf8
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 60 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc217f067a0, 0x8, 0xc217f067b8, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc217f067a0, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x3fada2b, 0xc211247a00, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x3fada2b, 0xc210e643e8, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc21051b8c0, 0x7, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 61 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc2140be440, 0x8, 0xc2140be458, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc2140be440, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x703a31, 0xc210dec500, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x703a31, 0xc210dbf208, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc2259ec5a0, 0x3, 0x3)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 62 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc2152643e8, 0x8, 0xc2152643f8, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc2152643e8, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x34a2229, 0xc210539500, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x34a2229, 0xc210562078, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc21dfad640, 0x10, 0x10)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 63 [runnable]:
github.com/jmhodges/levigo._Cfunc_leveldb_get(0x7fa3f80046d0, 0x7fa3f80044d0, 0xc216b5db50, 0x8, 0xc216b5db60, ...)
github.com/jmhodges/levigo/_obj/_cgo_defun.c:185 +0x36
github.com/jmhodges/levigo.(*DB).Get(0xc21011ab48, 0xc21011ab58, 0xc216b5db50, 0x8, 0x8, ...)
/home/os/imposm/src/github.com/jmhodges/levigo/db.go:171 +0xe2
imposm3/cache.(*DeltaCoordsCache).getCoordsPacked(0xc21010a600, 0x2e7a2f6, 0xc21085f000, 0x0, 0x20, ...)
/home/os/imposm/src/imposm3/cache/delta.go:305 +0x64
imposm3/cache.(*DeltaCoordsCache).getBunch(0xc21010a600, 0x2e7a2f6, 0xc210763c80, 0x0, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:353 +0x24f
imposm3/cache.(*DeltaCoordsCache).FillWay(0xc21010a600, 0xc21f269140, 0x1d, 0x0)
/home/os/imposm/src/imposm3/cache/delta.go:193 +0x140
imposm3/writer.(*RelationWriter).loop(0xc210130e70)
/home/os/imposm/src/imposm3/writer/relations.go:58 +0xefd
created by imposm3/writer.(*OsmElemWriter).Start
/home/os/imposm/src/imposm3/writer/writer.go:52 +0x8f
goroutine 64 [finalizer wait]:
runtime.park(0x411690, 0xea7180, 0xe912e8)
/home/os/go/src/pkg/runtime/proc.c:1342 +0x66
runfinq()
/home/os/go/src/pkg/runtime/mgc0.c:2276 +0x84
runtime.goexit()
/home/os/go/src/pkg/runtime/proc.c:1394
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.