Opened 8 years ago

Closed 8 years ago

#3587 closed defect (fixed)

Tag keys/values should be restricted to 255 characters

Reported by: FK270673 Owned by: potlatch-dev@…
Priority: critical Milestone:
Component: potlatch2 Version:
Keywords: potlatch2 advanced tab crash tiger Cc:

Description

Potlatch2 crashed three times in 24 hours when I tried to edit a textfield in the advanced properties tab. The advanced tab does NOT always reload completely when clicking the ADVANCED button, but if the advanced tab appears with all properties, it is sometimes hard to remove some unnecessary properties like TIGER ID. It happens when I tried to merge two ways with very long TIGER ID tags and to edit/remove the long TIGER ID tags. Is there any restriction for the length of any textfield that will be exceeded by a simple TIGER ID or by special characters within the TIGER ID?

Starting the Windows Task manager with Strg+Alt+Del makes the Flash player crashing and nothing than a white screen appears on the browser. I have rated it as blocker because losing some kilometers of personal effort simply sucks. Not touching TIGER IDs until saving is a workaround that enabled to get my data into the database, but it is no perfect solution, of course.

Change History (9)

comment:1 Changed 8 years ago by Richard

Please provide exact steps to reproduce:

  • Permalink of area on osm.org where this happens
  • Way IDs that you're trying to merge
  • Click/keypress sequence that you follow to cause the crash
  • Version of Flash Player you are using

comment:2 Changed 8 years ago by FK270673

comment:3 Changed 8 years ago by Richard

Priority: blockercritical
Summary: potlatch2 advanced tab crashTag keys/values should be restricted to 255 characters

Ok, so the issue appears to be that P2 is not coping with very long key or value strings. I can't actually reproduce it but that doesn't matter, as we shouldn't be allowing strings of over 255 characters anyway - they'll cause an API error on upload.

Summary changed; priority demoted from 'blocker' as P2 does actually show a warning (albeit a fairly ugly long one!) about tag mismatches when merging ways, and you should heed it. :)

comment:4 Changed 8 years ago by FK270673

Priority: criticalblocker

Today, it crashed again while editing the (TIGER) tabs of an existing power line (11837892) with Potlatch2. I tried to remove the tiger:tlid=51137899:51137901:51137903:51137905 manually when Potlatch2 crashed.

There must be an error with loading/reloading/editing properties while Potlatch2 is being busy - far before the saving error appears.

It would be fine if these funny numbers would disappear from the database rather than causing my editor to crash.

comment:5 Changed 8 years ago by Richard

Priority: blockercritical

Unfortunately your previous comment wasn't exact enough for me to be able to reproduce it, and if we can't reproduce it we can't fix it.

If, as requested originally, you could provide an exact series of actions, we can look at it as a matter of urgency. But "about 10 pieces of power line" - what are you doing with these power lines? How, exactly, are you doing it?

Please don't reverse the developers' classification of priorities; thanks. By definition if only one person has encountered the problem then it isn't something we would consider a blocker.

comment:6 Changed 8 years ago by FK270673

Unfortunately, these critical errors seem to be a result of multiple conditions.

  • 1. Choose a time when Potlatch2 is reloading slowly
  • 2. Use the ADVANCED tab as it is a good indicator for a pre-crash situation
  • 3. Draw a very long line, e.g. a powerline, until you reach an area that does not reload quickly.
  • 4. Add some / many pylons there (with R), you may edit some other nodes and ways as well. For TESTING purposes, it is a good idea to tag every SECOND node as pylon an to leave the other one blank, so you can see whether the ADVANCED tab indicates all changes between blank and tagged nodes correctly.
  • 5. If the ADVANCED tab remains EMPTY or keeps the properties of the PREVIOUS edit though you have added a pylon (with R), you have reached the stage two steps BEFORE the crash happened (!!).
  • 6. The SIMPLE tab indicates the CORRECT tag WHILE the ADVANCED tab indicates the PREVIOUS tag. This is the condition BEFORE a CRASH - it works fine for 10 or 15 times, but then the editor crashes.
  • 7. By adding a NEW TAG to the ADVANCED tab, e.g. ref=111, you may restore the CORRECT properties of that node / way. It works fine for 10 or 15 times, but then the editor CRASHES.
  • 8. Manually removing a tigerID has caused the CRASH.

I suppose there must be a conflict between listeners, maybe the tab listener and some other reloading listener.

comment:7 Changed 8 years ago by FK270673

This time, Potlatch2 crashed in a reproducable way when I tried to join four highways in the United States with different TIGER IDs. Then, I tried to edit their combined ID manually with the Advanced Tab which caused the crash.

comment:8 Changed 8 years ago by Richard

Both the "tag panel freezing" and the ">255 characters" issues should now have been fixed. I'd be interested to know whether this solves your problem.

comment:9 Changed 8 years ago by Richard

Resolution: fixed
Status: newclosed

No further reports on this so I'm assuming it's been fixed: please reopen if not.

Note: See TracTickets for help on using tickets.