Error r009 limit of 60 segments for a single road exceed

Правила форума Для предотврашения спама первые сообщения вновь зарегистрированных пользователей проходят ручную премодерацию.

Правила форума
Для предотврашения спама первые сообщения вновь зарегистрированных пользователей проходят ручную премодерацию.

Anonym

Сообщения: 15897
Зарегистрирован: 06 фев 2017, 18:49

Ошибка при компиляции (0089a). Создание карты.

Пробую сделать карту своего города с роутом.
при компиляции выдает такую ощибку:

Routing calculation
Error R009: Limit of 60 segments for a single road exceed.
и прекращает работу.
что значит «ограничение в 60 сегментов для одной дороги превышено»?
как исправить сей касяк?

зы: не в тему. может было уже где-то, но спрошу есчо раз.
1. на что влияет параметр или скажем так, что задает TRE size — 742 — (Garmin inits) Из чего он расчитывается? Есть какие-то ограничения или «подводные» камни? (кроме написанной — медленная отрисовка в жипирээсах)
2. что значит Max number of objects per TRE area
RGN limit — 127

Это все в настройках мапэдит, вкладка — cgpsmapper.


Unreal76

Сообщения: 123
Зарегистрирован: 16 янв 2010, 18:06

Re: Ошибка при компиляции (0089a). Создание карты.

Сообщение

Unreal76 » 03 июн 2006, 15:09

Сдается мне, что пока еще рано предъявлять какие-либо претензии к этому компилятору, особенно когда в версии есть буковка «а»…:)



Anonym

Сообщения: 15897
Зарегистрирован: 06 фев 2017, 18:49

хочу просто разобраться что не так делаю

Сообщение

Anonym » 03 июн 2006, 15:57

может атрибуты, тип дороги? версия 088 ваще вот такую портянку выкинула

Importing data

:Warning W014: RGNLIMIT should not be lower than 500.
Current import datum is: W84 :WGS 84 Global Definition II
:Warning W019: More than ONE background objects defined — switching to full manual background creation mode.
:Warning W004: Cannot determine type of element, type cannot be defined before RGNTYPE.

POI info sorting
Layer >>>>>>0<<<<<< generation
****points 1****
Elements to process —>1169
100%
Processed —>488
100%
Successfully imported: 488 not imported: 0
**** END ****
Routing calculation
Error R010: No data for routing — remove ‘ROUTING=Y’ from [IMG ID] for non routable maps!


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 67 гостей



Announcement

  • Index
  • » Garmin maps
  • » Routable Garmin maps: http://emexes.powweb.com/osm/

#1 2008-05-08 08:48:00

Radomir
Member
Registered: 2008-05-08
Posts: 18

Routable Garmin maps: http://emexes.powweb.com/osm/

Hi Folks,

This is my first post on this forum, because I wasn’t aware that it exists. Shame on me.

I have seen Garmin maps are a common topics here. I also tried recently to use OSM data on my Garmin device, but I think I have totally different approach that the one commonly presented here.

I understand the major drawback (or better call it lack of feature) of all existing maps generated from OSM data is that they are not routable?

If that’s not the case, then please correct me, because I am currently working on automatic conversion tool which uses cGPSmapper as compiler and I already have first routable (more or less) map of Germany (as test area for time being, but possible to generate from any area). If someone already have done that, then I will use my time better than redesigning a wheel.

If not, then I will probably have some questions regarding legal/license issues for making these tool/maps available for free for comunity.

Ra

Edit:
Routable maps for Garmin created from OSM data are available on: http://emexes.powweb.com/osm/.
You can also download tool (by Liosha) which converts OSM data into Mp files which can be compiled on mapcenter2. See later posts for a link.

Edit by Lambertus: Change topic title to reflect the topic content better

Edited by Radomir: Added download url

Last edited by Radomir (2008-07-26 12:02:55)

#2 2008-05-08 09:13:13

Lambertus
Inactive
From: Apeldoorn (NL)
Registered: 2007-03-17
Posts: 3,269
Website

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

Radomir wrote:

I understand the major drawback (or better call it lack of feature) of all existing maps generated from OSM data is that they are not routable?

Yes, thats true. But work is being done to be able to provide routable maps in two major ways:
1) Make Mkgmap produce routable maps (the final goal).
2) Make Mkgmap produce intermediate files in the Polish format (.mp) that can be processed by cGPSMapper. This is considered an ‘in-between solution’.

Radomir wrote:

If that’s not the case, then please correct me, because I am currently working on automatic conversion tool which uses cGPSmapper as compiler and I already have first routable (more or less) map of Germany (as test area for time being, but possible to generate from any area). If someone already have done that, then I will use my time better than redesigning a wheel.

If not, then I will probably have some questions regarding legal/license issues for making these tool/maps available for free for comunity.

Well, you are not the only one working on the same problem, but I have no idea how far the author (and others) are with their attempt to let Mkgmap produce .mp files.

I would suggest that you contact the author of Mkgmap and maybe also Carl Newman who stated that he works on this as well.


Mapping tools: Garmin GPSmap 60CSx, Giant Terrago 2002

#3 2008-05-12 14:40:47

akaDamian
Member
Registered: 2007-11-07
Posts: 6

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

OSM users in Russia decided to take the same approach as Lambertus described — to make a tool for.osm -> .mp conversion and then process .mp with cGPSMapper. As far as I know, the main work is done by User:Liosha. There is a table with types attribution — http://wiki.openstreetmap.org/index.php … сия/Garmin .

Also another user on Talk page suggested to use OSMGarminMap — http://wiki.openstreetmap.org/index.php/OSMGarminMap . Though id doesn’t support API 0.5, it still works on exporting the data. The usage is:

1. Take osm2mpx.xml, osm2mpx.xsl, feature-list.xml, mpx2mp.xsl,
2. Download data and save it as data.osm
3. Run xsltproc osm2mpx.xml > map.mpx
4. Run xsltproc feature-list.xml > map.mp

Feature-list.xml contains old features only but it’s still better than nothing.

#4 2008-05-12 20:05:23

SiliconFiend
Member
From: North SF Bay, CA
Registered: 2007-09-20
Posts: 2

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

Lambertus wrote:

Radomir wrote:

I understand the major drawback (or better call it lack of feature) of all existing maps generated from OSM data is that they are not routable?

Yes, thats true. But work is being done to be able to provide routable maps in two major ways:
1) Make Mkgmap produce routable maps (the final goal).
2) Make Mkgmap produce intermediate files in the Polish format (.mp) that can be processed by cGPSMapper. This is considered an ‘in-between solution’.

Radomir wrote:

If that’s not the case, then please correct me, because I am currently working on automatic conversion tool which uses cGPSmapper as compiler and I already have first routable (more or less) map of Germany (as test area for time being, but possible to generate from any area). If someone already have done that, then I will use my time better than redesigning a wheel.

If not, then I will probably have some questions regarding legal/license issues for making these tool/maps available for free for comunity.

Well, you are not the only one working on the same problem, but I have no idea how far the author (and others) are with their attempt to let Mkgmap produce .mp files.

I would suggest that you contact the author of Mkgmap and maybe also Carl Newman who stated that he works on this as well.

Yep, I’m working on a routable map converter, but very slowly. It’s mostly in the conceptual phase now, no code yet. My plan was to go through the .mp format, because I understand that well, and later if someone (else) decodes the binary routing format, then the tool could be adapted to write that directly. My current plan is to use Osmosis as a base because it has a well-written pipeline and support for a lot of input sources. I’ve defined a proposed rules file format on my Wiki page here: http://wiki.openstreetmap.org/index.php … nd/Ruleset. I’ve also defined some project requirements (mostly just a brain dump) here: http://wiki.openstreetmap.org/index.php … quirements The thing that’s holding me up mostly now is designing the architecture.

By the way, I took the old OsmGarminMap xsl sheets and updated them to work with the 0.5 api and also add routing support. However, XSL is the wrong tool for the job; it completely chokes on even 10 MB of data. But if you want to see my work and try it with a small area, my files are here: http://www.migratingcoconuts.com/pub/osmgarminmap/ You can test the output in GPSMapEdit—it has support for testing the routing graph.

Karl

#6 2008-06-05 20:45:37

mackerski
Member
Registered: 2008-06-05
Posts: 10

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

liosha wrote:

I’m also working on OSM -> MP converter  smile

Hi,

Thanks for working on this. Since I can’t participate in the Russian discussion, I hope you won’t mind me posting here. I tried to generate a map of Ireland using this method. Your script very quickly produced what looks like a complete and valid .mp file. Feeding this to the cGPSmapper web service didn’t produce a working map, but it looks like it may have come very close. The problem seems to be that my data contained routing nodes that were closer together than 5.4m, and cGPSmapper appears not to like this. I got quite a few of the same errror, but here’s the tail end of it:

Distance is below 5.4, NODID1: 33771, NODID2: 13433 RgnID: 24005

Distance is below 5.4, NODID1: 14121, NODID2: 32874 RgnID: 24043

Distance is below 5.4, NODID1: 34106, NODID2: 35454 RgnID: 24112
Error R011: NODID points cannot be closer than 5.4 meter!
ERROR: Resulting IMG file ‘35301972.img’ not found

I’ve investigated some of the problem cases. At least one of the examples I found really did have nodes that close (and it was possible to fix it). Other cases seem less easy to fix without local knowledge. Also, it would take a long time.

I’ve been looking into the code and it seems like it should be possible to avoid this case by lying a little to cGPSmapper. If we could detect when two nodes are too close to make any difference, we would report only one node. Does this seem a valid approach? I’m guessing that CPAN can provide a distance measurement module, though I’m sure that what I have in mind will slow things down.

Is it valid to do this only for the Nod<xx> entries or should I try to simplify the entire polyline?

Dermot

Last edited by mackerski (2008-06-05 20:53:48)

#7 2008-06-05 21:39:03

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

mackerski,
of course it is possible to detect such close points, but there are some problems:
* it’ll take much more time, because we need n^2 distance measurements
* it is not clear what to do after we detect them. joining nodes is not a good idea

you can use cgpsmapper with -e parameter to skip errors (it will join close nodes)
also you can open .mp with GpsMapEdit and use «Verify map» tool

#8 2008-06-05 21:48:40

mackerski
Member
Registered: 2008-06-05
Posts: 10

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

liosha wrote:

* it’ll take much more time, because we need n^2 distance measurements

Not for what I had in mind (though maybe my idea isn’t sufficiently complete). I was only interested in avoiding nodes that are too close to each other along the same way. So the necessary check for this will be much more limited. If nodes along other ways cause a problem then at least we should find that there are much fewer of them.

liosha wrote:

* it is not clear what to do after we detect them. joining nodes is not a good idea

I agree that it could cause some unexpected results — but again, as long as we only do it within an existing way I’m hoping the effect will be minimal.

liosha wrote:

you can use cgpsmapper with -e parameter to skip errors (it will join close nodes)
also you can open .mp with GpsMapEdit and use «Verify map» tool

That’s not so easy — if I understand correctly, the free version of cgpsmapper doesn’t support the routing information, and that’s what I’m interested in here. I already have non-routable maps on my Garmin devices. So my test used the online compiler, and I didn’t see any way to set the -e parameter.

I’ll experiment with merging nodes and see how far I get.

Thanks,
Dermot

#9 2008-06-05 21:57:20

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

mackerski wrote:

I was only interested in avoiding nodes that are too close to each other along the same way.

there is no need for such checks.
converter creates nodes only on road intersections, so not every OSM node become MP node  smile

mackerski wrote:

if I understand correctly, the free version of cgpsmapper doesn’t support the routing information, and that’s what I’m interested in here.

you can use personal version of cgpsmapper — it supports routing and have 1 month trial period

#10 2008-06-05 22:09:43

mackerski
Member
Registered: 2008-06-05
Posts: 10

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

liosha wrote:

there is no need for such checks.
converter creates nodes only on road intersections, so not every OSM node become MP node  smile

Sorry, I should have been clearer. The cases I’m having trouble with are where intersection nodes occur too close together along the same way. Sometimes this is just bad mapping, such as a crossroads with two nodes instead of one. But sometimes it can be a junction where both a road and a footpath beside it intersect the same road very close to each other.

liosha wrote:

you can use personal version of cgpsmapper — it supports routing and have 1 month trial period

That’s handy. I’ll try that.

Thanks,
Dermot

#11 2008-06-06 05:12:51

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

mackerski wrote:

The cases I’m having trouble with are where intersection nodes occur too close together along the same way. Sometimes this is just bad mapping, such as a crossroads with two nodes instead of one. But sometimes it can be a junction where both a road and a footpath beside it intersect the same road very close to each other.

Ok, now i understand  smile
i’ll think about it, but imho it’s not a task for converter
it would be better to make standalone script for MP preprocessing

#12 2008-06-06 15:13:52

Radomir
Member
Registered: 2008-05-08
Posts: 18

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

Joining nodes is exactly what i am doing. The assumption is «if the nodes are so close then what’s the difference — the driver will find it’s way anyway». I know that this not solves the problem pretty, but it is better the have the routable maps of a country with a few joined nodes than nothing at all.

From technical point of view: I use sweep algorithm. I am not sure if this is official name,  but you can probably find it in the net. It sorts the nodes taking x coordinate at first at then looks only for those which are close enough when looking at X axis. It works faster than naive comparison of n^2 nodes.

I don’t compute the distance exactly, because I don’t believe cgpsmapper does that anyway. Computation of REAL distance between two points having their Geo-coordinates is quite expensive. I simply check if the distance is not larger that n seconds. I suspect this is exactly what cgpsmapper and Garmin are doing.

Joining of nodes is a first problem. When you solve this, then you encouter another — self intersecting roads. Garmin prohibits the routable road to cross the same point more than once. And there is lot of such roads in OSM (roundabouts are the obvious example). I am splitting those into two parts but with checking if I am not creating two routing nodes laying to near etc.

I managed to produce some maps this way. I have just started to test them. You can download an UK & Ireland map from http://nickb.dev.openstreetmap.org/publ … reland.exe, but please be aware that this is first version. Not even beta wink

Ra

Edit:
The link points to InnoSetup installer of a compiled set of maps. The installer installs it into Garmin MapSource program. There are no *.mp files there.

Last edited by Radomir (2008-06-06 15:24:32)

#13 2008-06-06 16:34:36

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

Radomir wrote:

From technical point of view: I use sweep algorithm. I am not sure if this is official name,  but you can probably find it in the net. It sorts the nodes taking x coordinate at first at then looks only for those which are close enough when looking at X axis. It works faster than naive comparison of n^2 nodes.

I don’t compute the distance exactly, because I don’t believe cgpsmapper does that anyway. Computation of REAL distance between two points having their Geo-coordinates is quite expensive. I simply check if the distance is not larger that n seconds. I suspect this is exactly what cgpsmapper and Garmin are doing.

of course we do not need to make n^2 geo distance measurement  smile
there are many ways to optimize such process

but i advise just use cgpsmapper -e
and correct these errors in the OSM

Radomir wrote:

Joining of nodes is a first problem. When you solve this, then you encouter another — self intersecting roads. Garmin prohibits the routable road to cross the same point more than once. And there is lot of such roads in OSM (roundabouts are the obvious example). I am splitting those into two parts but with checking if I am not creating two routing nodes laying to near etc.

this problem is already solved in my script — it splits self-intersecting ways  smile
it also filters some node dupes

#14 2008-06-07 09:49:28

Radomir
Member
Registered: 2008-05-08
Posts: 18

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

Hi Liosha,

I had a quick look into your maps and they look very well. You have done a great job.

liosha wrote:

but i advise just use cgpsmapper -e
and correct these errors in the OSM

At first I thought you have lot of luck or very disciplined people working over map of Russia, because you have all the input data correct and I haven’t seen corrections implemented in your code. But I skimmed it quickly through so it is possible that I missed something.

Now I am a bit confused. Are you correcting the data in OSM manually? Do you do this in OSM or MP files?

#15 2008-06-07 18:58:40

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

Radomir wrote:

… or very disciplined people working over map of Russia…

LOL  lol :lol:

Radomir wrote:

I haven’t seen corrections implemented in your code. But I skimmed it quickly through so it is possible that I missed something.
Now I am a bit confused. Are you correcting the data in OSM manually? Do you do this in OSM or MP files?

I have some corrections implemented in code: duplicate nodes are filtered, self-intersecting roads are splitted.
I was found just 5 bad roads in Moscow area that causes fatal error in cgpsmapper, and i manually corrected them in OSM.
Now cgpsmapper can compile Moscow with -e switch (there are some errors like «too close nodes», but they are not fatal).

I also made script that daily downloads some areas via osmxapi, converts them into MP and then tries to compile with cgpsmapper_free (w/o routing) and with cgpsmapper_personal.
Results are here: http://garminmapsearch.com/osm/mp/
As you can see, Saint-Petersburg area (piter_*) still can not be compiled with routing.

Last edited by liosha (2008-06-07 18:59:26)

#16 2008-06-08 01:29:18

mackerski
Member
Registered: 2008-06-05
Posts: 10

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

liosha wrote:

but i advise just use cgpsmapper -e
and correct these errors in the OSM

I have had some useful results with cgpsmapper -e. Trying to create a map of all Ireland still fails for some other reason, but that can probably be fixed.

I am a big fan of correcting bad data in the OSM data. However, this is not always possible (well, let’s say desirable). Take some cases:

1. You have a simple crossroad. But instead of meeting on a single node, the junction includes two nodes about a metre apart. This is a mapper error and should be fixed and cgpsmapper will then be happy

2. You have a small (but not mini) roundabout. cgpsmapper complains that the nodes on adjacent arms of the roundabout are too close together (BTW, I think you’re correct that the distance measurement it uses is inexact, because it has complained about nodes that IMHO _are_ more than 5.4m apart).

The only way in the base data to make cgpsmapper stop complaining is to collapse the whole roundabout onto a single node (or fewer nodes in any case). This is bad for the navigation instructions that will result from this — because the junction will no longer be recognised as a roundabout. It’s also a very bad case of mapping-for-the-renderer, to remove map detail just because a single application can’t deal with it.

Preprocessing does, as you say, provide a solution to this.

3. Junction of two dual-carriageways at traffic signals. In the standard case you will have four junction nodes. What if they are too close to each other? Once again, I don’t want to simplify that on the OSM side.

#17 2008-06-08 18:29:12

usm78-gis
Member
Registered: 2008-04-21
Posts: 2,672

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

mackerski wrote:

1. You have a simple crossroad. But instead of meeting on a single node, the junction includes two nodes about a metre apart. This is a mapper error and should be fixed and cgpsmapper will then be happy

You can use the ‘merge nodes’ function in JOSM, after doing a rectangular selection around these nodes.

2. You have a small (but not mini) roundabout. cgpsmapper complains that the nodes on adjacent arms of the roundabout are too close together

Split the roundabout into pieces at the crossings. Having ’roundabout’ as topological object is a bad idea anyway.

Preprocessing does, as you say, provide a solution to this.

I’m using some quick and dirty awk scripts to extract, download and edit certain OSM topological errors, but maybe we can extend
osm2mp to work as an osm2osm preprocessor. Then it will be possible to re-upload preprocessed data directly to the server.
It opens a big can or worms with concurrency, if two people will try to reprocess the same or overlapping areas simultaneously.
Fortunately, there are not that much people editing OSM late at night smile

3. Junction of two dual-carriageways at traffic signals. In the standard case you will have four junction nodes. What if they are too close to each other? Once again, I don’t want to simplify that on the OSM side.

You can’t avoid ‘mapping-for-garmin’ here, so think out some soultion that will be commonly acceptable.

#18 2008-06-08 18:50:16

usm78-gis
Member
Registered: 2008-04-21
Posts: 2,672

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

liosha wrote:

As you can see, Saint-Petersburg area (piter_*) still can not be compiled with routing.

Error R009: Limit of 60 segments for a single road exceed.

osm2mp should deal with it, since it’s a garmin-specific problem.

Distance is below 5.4, NODID1: 9513, NODID2: 8571 RgnID: 14

It does not show up in gpsmapedit, but i will check again.

Internal error during split of RGN80 objects - if this is supported version of program - contact with gps_mapper

I doubt we can do something about cgpsmapper internal bugs without having the source code.
One more reason to finish the NOD research, add it to mkgmap and put this cgpsmapper guy out of the business wink

#19 2008-06-08 20:29:49

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

Internal error during split of RGN80 objects — if this is supported version of program — contact with gps_mapper

this fatal error is caused while trying to recover this error:

Node in road with NODID point or house numbers was reduced — 2 nodes were aligned to the same coordinates
RoadID: 5683
Error R007: Node reduction.

the way has nodes with different ID but with same coords. just redraw that way

#20 2008-06-08 21:50:08

usm78-gis
Member
Registered: 2008-04-21
Posts: 2,672

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

liosha wrote:

the way has nodes with different ID but with same coords. just redraw that way

I’m doing the full n(n-1)/2 distance qsort() on the original routable nodes table, so it just can’t happen.

edit:
sorry, the bridleways and similar weird ways were removed  from the table. maybe it explains
what’s going on here.

Last edited by usm78-gis (2008-06-08 21:52:24)

#21 2008-06-09 10:06:54

nyem
Member
Registered: 2007-08-02
Posts: 20

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

liosha wrote:

I have some corrections implemented in code: duplicate nodes are filtered, self-intersecting roads are splitted.

Garmin has a specific type for roundabout (0xc, polyline). Can we have all ways tagged as junction=roundabout use this type. Modifying poly.cfg doesn’t seem to work. You might also want to set all roundabouts as oneway=yes if it was not tagged as such.

Thanks for such a great tool

#22 2008-06-09 10:13:41

Radomir
Member
Registered: 2008-05-08
Posts: 18

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

Hi Guys,

I got a program written in python that corrects all the situations that do not fulfil Garmin requirements. But it makes the corrections while reading data. I have never planed to update OSM database itself. This is because I think, that these requirements are Garmin specific and OSM is not. What if there is someone preparing routable maps for X devices and they require roundabouts from one piece and nodes laying no closer that 10 meters? Should he correct the data in OSM? I’m sure not. Correcting data in fly should be no problem.

I quickly (=without lot of work) generated a map of Petersburg with my tool. You can download it here: [link removed]. I made a mistake declaring an area and the city is a bit off centre, but this shouldn’t be an issue. Everything that I have done manually was to declare an area of the map, it’s ID, name and some paths to planet and osm files. The whole process is automatic. I don’t correct any data in OSM. It took about 1,5 hour of computing time, but almost all the time was needed for Osmosis to extract the data from planet file. And obviously I am not yet ready to support cyrillic languages wink

I checked the map quick on my eTrex and it seems to be routable. Here is the screenshot: petersburg-example.jpg

Admin edit: Link not working anymore

Last edited by Lambertus (2009-02-08 12:41:40)

#23 2008-06-09 10:40:18

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

nyem wrote:

Garmin has a specific type for roundabout (0xc, polyline). Can we have all ways tagged as junction=roundabout use this type. Modifying poly.cfg doesn’t seem to work.

this osm2mp version uses latest tag to determine object type
so if it sees «junction=roundabout» _after_ «highway=» it sets Type=0x0c, or highway type if _before_
some priority mechanism must be imbplemented to have it always use 0x0c
i’ll think about it smile

nyem wrote:

You might also want to set all roundabouts as oneway=yes if it was not tagged as such

add line

      $polydir     = 1                  if ("$1=$2" eq "junction=roundabout");

before

      $polydir     = $yesno{$2}         if ($1 eq "oneway");

#24 2008-06-09 11:39:31

usm78-gis
Member
Registered: 2008-04-21
Posts: 2,672

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

Radomir wrote:

But it makes the corrections while reading data. I have never planed to update OSM database itself.

I think that certain changes should be put back into the database (all that are non-garmin specific).

It took about 1,5 hour of computing time, but almost all the time was needed for Osmosis to extract the data from planet file.

It is much faster (and easier) to use OSMXAPI DB for this purpose.

And obviously I am not yet ready to support cyrillic languages wink

I think it’s garmin to blame here for not using the utf8 fonts.

#25 2008-06-09 12:54:33

emj
Member
From: .se (59.3N17.99E) 0735969076
Registered: 2006-06-18
Posts: 949

Re: Routable Garmin maps: http://emexes.powweb.com/osm/

usm78-gis wrote:

And obviously I am not yet ready to support cyrillic languages wink

I think it’s garmin to blame here for not using the utf8 fonts.

That should be easy to solve, if koi8r is the russian charset.

iconv -f utf8 -t koi8r planet-extract.osm >russian.osm

Might not parse in all OSM tools (osmosis) after that but it should convert from utf8 to koi8r.

Будучи менеджером коммерческого отдела небольшой торговой компании, я выполнял задачу по отправке нескольких сотен писем постоянным и потенциальным клиентам. Базу формировали из открытых источников мы сами, предложение было реально интересным целевой аудитории. Возникла «неожиданная» проблема – часть писем стала возвращаться. Кроме того, начали приходить сообщения с указаниями кодов ошибки SMTP. Своего IT-специалиста в штате у нас не было, потому разобраться с проблемой я решил самостоятельно. О результатах этой работы, причинах возникновения таких ошибок и методах их решения расскажу в этой статье.

Ошибка SMTP

Как избежать ошибок при составлении и отправке писем

Причинами возникновения ошибок и, как следствие, неполучения сообщений могут служить разные факторы. Одни из них связаны с неправильным составлением исходящих писем самим пользователем, другие относятся к более глобальным программным настройкам со стороны получателя.

Самый простой способ это понять – отправить тестовое сообщение на свой ящик. Затем следует протестировать его отправку и получение, используя разные внешние почтовые сервисы: gmail, yandex, mail, rambler и другие. Если сообщение получено, следует ответить на него, проверив корректность исполнения команды «RE» вашим почтовым сервером и принятие ответа условным отправителем.

Довольно часто проблемы с попаданием писем в папку «Спам» или программной блокировкой на стороне получателя лежат в неверном оформлении ключевых полей. Особенно это касается массовых рассылок коммерческого характера. Для отправки большого количества однотипных сообщений как минимум потребуется выполнение следующих параметров настройки:

  • выделенный IP-адрес с целью исключить блокировку на стороне сервера-ретранслятора или почтовой программы конечного получателя;
  • криптографические подписи DKIM и SPF, помогающие подтвердить подлинность домена и минимизировать количество писем, воспринимаемых как спам.

Важно! В случае несоблюдения этих элементарных правил вы рискуете не только тем, что конкретное письмо не будет доставлено адресату. При многократных попытках отправки письма в большинстве почтовых программ в блок-лист попадет вся корреспонденция, отправляемая с вашего email, и даже корпоративный домен (@domain.***).

Некорректное использование бота для отправки писем может привести к блокировке отправителя и другим нежелательным последствиям. Даже если информация, которую вы отправляете потенциальным клиентам, реально интересна им, система спам-фильтрации может воспринять данную рассылку как вредоносную. Чтобы избежать этого, лучше всего воспользоваться услугами специализированных компаний.

В моей практике был случай, когда никак не удавалось добиться получения моей электронной корреспонденции одним из сотрудников компании «Лукойл». Письма я отправлял самые простые, используя корпоративный ящик. Только после того, как мой респондент обратился в IT-службу своего предприятия, выяснилось, что данный адрес находится в блэк-листе. Попал он туда из-за каких-то ошибок, допущенных моим предшественником. Понадобилось больше недели, чтобы адрес включили в «белый список». Все это время письма, высылаемые с личного mail@yandex.ru, доходили без проблем.

Полезно: Почему не приходят письма с сайта. Пример частного случая.

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Положительные и отрицательные сообщения SMTP-сервера

SMTP (Simple Mail Transfer Protocol) — это протокол, используемый большинством почтовых программ для отправки электронных сообщений в сети интернет. Некорректное взаимодействие между серверами, индивидуальные настройки на уровне программного обеспечения и многие другие причины приводят к появлению ошибок. В этом случае письма не доходят до получателей, возвращаются обратно или просто «пропадают». При возникновении таких ситуаций отправитель получает сообщение о наличии конкретной ошибки, отражающей SMTP-код последнего отклика сервера.

Ошибка отправки писемДанные коды являются трехзначными, каждая его часть несет в себе определенную информацию, расшифровывающую причину сбоя.

Первая цифра комбинации содержит информацию о качестве доставки:

  • сообщение доставлено («SMTP OK»);
  • возникла неизвестная или временная проблема («SMTP unknown»);
  • критическая ошибка («SMTP error»). 

Существует четыре варианта значений для первой цифры кода:

  • 2xx – положительный результат, есть возможность передачи следующей команды;
  • 3xx – отложенный результат, необходимо осуществление дополнительных действий;
  • 4xx – сообщение не принято, но проблема носит временный характер, и запрос может быть повторен через какое-то время; 
  • 5xx – категорический отказ выполнения команды, отправка запроса со стороны передающего сервера в том же виде невозможна. 

Вторая цифра в коде сообщает о категории ответа:

  • 0 – синтаксические ошибки; 
  • 1 – ответы на запросы информации; 
  • 2 – ошибки канала передачи; 
  • 3 и 4 – неизвестный тип ошибки;
  •  5 – статус почтовой системы.

Третья цифра дает более расширенную информацию о значении, указанном во второй цифре SMTP-ответа.

Помимо цифровой комбинации, SMTP-сообщение может содержать дополнительную текстовую информацию.

Полную информацию о кодах, их компоновке и значениях можно найти в спецификациях RFC 5321 и RFC 1893.

Следует учитывать, что SMTP-message говорит об успешном или неудачном варианте доставки именно на уровне взаимодействия почтовых серверов. Положительный ответ вовсе не означает, что ваше письмо не попало в папку «Спам».

Читайте также

Как настроить почту в Outlook

Почему письма не отправляются с электронной почты

Виды почтовых сервисов

На программном уровне существует несколько видов обработки электронной почтовой корреспонденции. К первой группе относятся виртуальные сервисы, доступные чаще всего в бесплатном исполнении через интернет-соединение на сайте почтового сервера. Это всем известные ресурсы: 

  • Gmail/Google Suite (почта от Google.com);
  • Yandex.ru;
  • Mail.ru; 
  • Rambler.ru и другие.

Более подробную информацию о значениях ответов SMTP можно получить на сайтах популярных почтовых сервисов:

  • Коды ошибок SMTP почтового сервиса Gmail (Google Suite) (support.google.com)
  • Создание и отправка писем на сервисе Яндекс
  • Ошибки отправки писем при использовании сервера и сервиса Mail.ru

Ко второй группе относятся почтовые клиенты – программы, обладающие более расширенным функционалом, чем виртуальные сервисы. Наиболее популярными и универсальными почтовыми клиентами для Windows являются:

  • Opera Mail;
  • Mozilla Thunderbird;
  • Koma-Mail;
  • SeaMonkey;
  • The Bat!;
  • Microsoft Outlook.

Принципы работы почтовых клиентов несколько отличаются от процесса обработки корреспонденции виртуальными серверами. При отправке сообщения программа отсылает его не напрямую конечному получателю, а ретранслирует через сервер-релей. Этот процесс осуществляется чаще всего с использованием протокола SMTP, а получение корреспонденции обычно происходит с помощью IMAP или POP.

Коды SMTP-ответов определяются стандартом. Администратор почтового сервера может создать собственные настройки, в том числе и в части кодировки ответов сервера. Особенно это касается локальных почтовых программ, установленных непосредственно на сервере какой-нибудь компании.

О вариантах выбора и способах создания корпоративных почтовых сервисов более подробно можно прочитать здесь: Что такое почтовый сервер и зачем он нужен.

Чипсендер

Классификация отрицательных SMTP-сообщений. Способы решения проблем

Классификация отрицательных SMTP-сообщенийЯ настроил свою почтовую программу – локальный клиент (MS Outlook и т.п.) или бесплатную почту на gmail или yandex. Начинаю отправлять письма, но сталкиваюсь с различными проблемами, связанными с тем, что мои респонденты не получают направленную им корреспонденцию. Соответственно, на мой ящик приходят сообщения об ошибках в виде кодировок SMTP. 

Сразу опускаю тот пакет сообщений, которые начинаются с 2хх и 3хх, так как они содержат информацию о том, что задача получения письма уже решена положительно либо получит такой статус в ближайшее время. Более подробно рассмотрим некоторые виды кодированных сообщений, начинающихся с 4хх и 5хх, т.е. отклики SMTP-сервера, которые сообщают о наличии проблем.

Почтовый сервер сообщил об ошибке 421

Значение: Service Not Available. Сервер недоступен: канал связи будет закрыт.

Возможные причины

Варианты решения

Неправильно заданы параметры SMTP-соединения

Необходимо перепроверить настройки

Брандмауэр блокирует IP-адрес сервера электронной почты

Необходимо создать новое правило в брандмауэре

Блокируется трафик через порт 25

Попробуйте в настройках учетной записи электронной почты сменить номер порта SMTP на 465

Проблема использования VPN

Необходимо, чтобы провайдер услуги занес ваш почтовый сервер в белый список адресов VPN

Данная ошибка возникает наряду с грейлистингом (Greylisting «Серый список») при интенсивном использовании бесплатного SMTP-сервера, который лимитирует количество отправляемых сообщений в единицу времени. Для решения этой проблемы можно воспользоваться высоконагруженным SMTP-сервером. Чаще всего эта услуга является платной.

Получено сообщение с кодом 451

Значение: Requested action aborted: local error in processing. Требуемое действие прерывалось: ошибка в обработке.

Возможные причины

Варианты решения

Превышено количество допустимых подключений или лимит обмена сообщениями за отрезок времени, письма ждут отправки в очереди

В настройках сервера увеличить лимит или задать ограничение не на количество подключений, а на количество писем на одного пользователя. Накопившуюся очередь писем можно отправить повторно командой «force send»

Неправильно настроены MX-записи домена, из-за чего происходит неправильная маршрутизация писем

Проверьте логи, конфигурационные файлы, МХ-записи и разрешения, внесите корректировки

Устранение проблем с доставкой электронной почты для кода ошибок 451 4.7.500–699 (ASxxx) в Exchange Online. Электронная почта из доменов onmicrosoft.com ограничена и фильтруется для предотвращения спама.

Необходимо добавить настраиваемый домен.

Ошибка почтового сервера 452

Значение: Insufficient system resources. Запрашиваемое действие не выполнено: недостаточно места в системе.

Возможные причины

Варианты решения

На сервере получателя закончилось место, поэтому письмо не доставляется

Чтобы в этом убедиться, достаточно попробовать осуществить отправку письма с другого сервера

В сообщении присутствует текст «Out of memory». Это значит, что недостаточно места на вашем сервере

Необходимо проверить количество отправляемых писем в очереди, наличие свободного места на диске и объем доступной памяти

В Microsoft Exchange Server есть специальный компонент мониторинга доступных ресурсов Back Pressure, который отслеживает свободное место на диске, на котором хранятся очереди транспортной службы Exchange. При возникновении такой ошибки можно сделать следующее:

  • очистить диск от ненужных файлов;
  • отключить мониторинг Back Pressure (не рекомендуется);
  • перенести транспортную очередь на другой диск достаточного объема.

Доставка письма

Сервер сообщил об ошибке SMTP 550

Значение:  Mailbox unavailable. Требуемые действия не предприняты: электронный ящик недоступен

Возможные причины

Варианты решения

Неверно указан email-адрес получателя

Необходимо связаться с адресатом альтернативным способом и уточнить правильность написания адреса, а также убедиться, что он является действующим

Система заражена вирусом, осуществляющим массовую рассылку писем с вашего адреса

Провести полную проверку специализированной антивирусной программой

На стороне вашего интернет-провайдера установлены ограничения на отправку исходящих сообщений

Необходимо связаться с поставщиком интернет-услуг и получить консультацию по устранению данной проблемы

Сервер получателя не работает

Отправьте тестовое письмо на другой почтовый сервер. Свяжитесь с получателем и сообщите о проблеме

Данная ошибка может возникнуть из-за настроек программы Антиспам на стороне получателя. Проверьте корректность оформления вашего письма и другие параметры, по которым ваше сообщение может быть отнесено к нежелательным.

Почтовый сервер ответил ошибкой 571

Значение:  SMTP Protocol Returned a Permanent Error 571 xxx@mail.ru prohibited. We do not relay/Spam message rejected. Ошибка на стороне получателя почты.

Возможные причины

Варианты решения

Ваш IP-адрес заблокирован на стороне конечного получателя спам-фильтром, антивирусом или файрволом

Данную проблему может решить только администратор сети получателя, исключив ваши идентификационный данные из списка блокировки или добавив их в «белый список»

Неверные учетные данные ретранслятора. У вас нет разрешения на отправку электронной почты через сервер, который находится между вами и получателем

Обратитесь к администратору данного ресурса для изменения настроек

У IP отправителя нет RDNS

Проверьте настройки получения писем и разрешения для доменов-отправителей

Как я уже писал выше, разные почтовые серверы накладывают свои ограничения на прием и отправку сообщений. Код 571 в Google Suite расшифровывается следующим образом: «Действующая политика запрещает отправку этого сообщения». Письмо может содержать защищенные или конфиденциальные данные – номера кредитных карт и т.п. Или политика администрирования запрещает отправку определенными пользователями сообщений адресатам вне установленной группы.

Сертификат почтового сервера недействителен

Предупреждение безопасности интернетаОбычно с таким сообщением приходится сталкиваться пользователям, у которых настроен Microsoft Exchange Server/MS Outlook. В данной ситуации самое простое решение – обновить сертификат.

Проверка доступности почтового сервера программным методом

В данной статье описаны лишь некоторые варианты ошибок, которые могут возникнуть при отправке электронных сообщений. Полный перечень достаточно объемен и во многом зависит от настроек конкретного сервера как на стороне отправителя, так и получателя. Некоторые из ошибок могут быть легко устранены обычным пользователем, другие под силу лишь опытным администраторам.

Одним из способов предупреждения появления ошибок является онлайн-проверка доступности почтового сервера с помощью бесплатных инструментов:

  • https://mxtoolbox.com
  • https://www.ultratools.com
  • http://mail2web.com

Эти сервисы пробуют подключиться к почтовому серверу по SMTP, подтверждают, что у него есть запись обратной зоны DNS, и замеряют время отклика. С их помощью можно диагностировать некоторые ошибки службы почтовых серверов или проверить, не занесен ли данный ресурс в черные списки из-за спама.

Прочитав эту статью, обратите внимание на то, как настроен ваш почтовый сервер на получение сторонних писем по SMTP-протоколу. Быть может, в данный момент ваш антиспам или локальная политика фильтрации входящих сообщений блокирует получение очень важного и нужного для вас месседжа? Проверьте сами или обратитесь к системному администратору. Если ошибку с SMTP никак не удается решить, то попробуйте обратиться в службу поддержки почтового сервера.

‎05-05-2019

09:26 AM

Hi!
since the beginning of April 2019, I have been suffering with the same error during data integration between excel and cds using powerquery. I need to update daily about 42 thousand records, but due to this failure, between 100 and 500 records present errors.

I would be very grateful if anyone had any idea on how to solve this problem.

This is the error:

{«error»:{«code»:»0x80072322″,»message»:»Number of requests exceeded the limit of 6000 over time window of 300 seconds.»,»innererror»:{«message»:»Number of requests exceeded the limit of 6000 over time window of 300 seconds.»,»type»:»Microsoft.Crm.Extensibility.Throttling.ThrottlingRateLimitExceededException`1[[Microsoft.Crm.Extensibility.ODataV4.Throttling.ThrottleKey, Microsoft.Crm.Extensibility, Version=9.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]»,»stacktrace»:» at Microsoft.Crm.Extensibility.ODataV4.Throttling.ODataThrottlingHandler.<ThrottleBurstRequest>d__9.MoveNext()rn— End of stack trace from previous location where exception was thrown —rn at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()rn at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)rn at Microsoft.Crm.Extensibility.ODataV4.Throttling.ODataThrottlingHandler.<ThrottleRequest>d__8.MoveNext()rn— End of stack trace from previous location where exception was thrown —rn at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()rn at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)rn at Microsoft.Crm.Extensibility.ODataV4.Throttling.ODataThrottlingHandler.<>c__DisplayClass7_0.<<SendAsync>b__0>d.MoveNext()rn— End of stack trace from previous location where exception was thrown —rn at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()rn at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)rn at Microsoft.PowerApps.CoreFramework.ActivityLoggerExtensions.<ExecuteAsync>d__11`1.MoveNext()rn— End of stack trace from previous location where exception was thrown —rn at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()rn at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)rn at Microsoft.Xrm.Telemetry.XrmTelemetryExtensions.<ExecuteAsync>d__6`1.MoveNext()rn— End of stack trace from previous location where exception was thrown —rn at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()rn at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)rn at Microsoft.Crm.Extensibility.ODataV4.Throttling.ODataThrottlingHandler.<SendAsync>d__7.MoveNext()rn— End of stack trace from previous location where exception was thrown —rn at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()rn at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)rn at System.Web.Http.HttpServer.<SendAsync>d__0.MoveNext()»}}}

Понравилась статья? Поделить с друзьями:
  • Error query returned no rows
  • Error query has no destination for result data postgresql
  • Error qualified id in declaration before token
  • Error qt license file was not found
  • Error python is required to build qtqml