[OSM-talk] Closed Ways all Opened in Luxembourg
Richard Fairhurst
richard at systemeD.net
Sun Feb 3 16:52:20 GMT 2008
Patrick Weber wrote:
> Hi
>
> Noticed something very strange just now. Looked at Luxembourg-City
> in Potlatch, and all closed ways (roundabouts, parking lots ... )
> had been "opened" . By that I mean the last node had been deleted
> so that that there was a gap and the line wasnt closed anymore. Now
> this doesnt seem to have been a manual error, I found dozens of
> errors!!
>
> example : http://www.openstreetmap.org/?
> lat=49.60003&lon=6.10759&zoom=17&layers=B0FT
>
> Go into Potlatch, and the roundabout, the parking lot, the
> graveyard are all not closed anymore (they obviously were before,
> as Mapnik render shows).
>
> Whats goind on ?
Short version:
An unintended side-effect of a change to the server code deployed
about one minute before you sent your message. Spotted instantly and
now fixed. Sorry for the inconvenience.
Long version:
Since the dawn of time, Potlatch has accessed the database directly
using SQL statements, rather than the Rails object model that the
rest of the site uses. This is principally because I understand a bit
of SQL but not any Rails. (But also because, especially in the old
API 0.4 days, Potlatch abstracted a lot of stuff away from the user -
particularly segments - and that wasn't easily mappable to Rails
objects. Well, not easily for a n00b like me.)
I'm very much of the school that it doesn't matter if it's written in
Fortran as long as it works. Not everyone else is, and that's fair
enough, they have their own reasons and I'm not going to say who's
right and who's wrong. Anyway, one of those who takes the opposite
view s Steve, and again given that most of the Rails code is his he's
got the right to say that. So as part of ZXV's Week of OSM, Steve
rewrote some of the SQL in Rails.
Now this is all great and means that Rails developers can understand
the code. _But_ unfortunately it was a full four times slower than
the old SQL. Hence why Potlatch has been running slowly for the last
week.
So today, Tom did a bit of work to improve this. Tom's improved Rails
code was just over twice as fast as this, which is clearly a win
(i.e. 1.9x slower than original Potlatch SQL). Unfortunately, AIUI
due to peculiarities of Rails, this meant that any node would only be
returned once for a way... which broke circular ways.
Tom deployed this, 30 seconds later I spotted the problem, two
minutes later Tom had deployed a fix... it's just bad luck that you
were editing in the intervening 2 minutes. :)
Anyway, more usefully, Potlatch now automatically resizes itself to
your browser window. Still a couple of rough edges to iron out
(particularly with the Yahoo imagery) but hope you like it!
cheers
Richard
More information about the talk
mailing list