Modify

Opened 4 years ago

Closed 4 years ago

#3304 closed defect (fixed)

Upload failed - Placeholder Relation not found

Reported by: phobie Owned by: team
Priority: critical Component: Core
Version: latest Keywords: upload failed placeholder relation not found reference
Cc:

Description

During upload I received the following error: "Upload failed. Placeholder Relation not found for reference -9 in relation -8. (Code=400)"

The console output is attached...

What I did:

  • created a new route relation "A" (by clicking on "Dupli...") and added ways and nodes
  • created a new line relation "D" (by clicking on "Dupli...")
  • added "A" to "D"
  • added "D" to the existing network relation (63910)
  • created two new route relations "B" and "C" (by clicking on "Dupli...") and added ways and nodes to them
  • added "B" and "C" to "D"
  • modified "A", "B" and "C"
  • tried to upload and received the error message
  • deleted "D"
  • tried to upload again and succeeded...
  • recreated "D" (by clicking on "Dupli...")
  • added "A" (2008073), "B" (2008074) and "C" (2008075) to "D"
  • added "D" to the existing network relation (63910)
  • tried to upload again and succeeded...

Resulting line relation:
http://www.openstreetmap.org/browse/relation/208076

Attachments (1)

josm_1985_console_output.txt.zip (5.7 KB) - added by phobie 4 years ago.

Download all attachments as: .zip

Change History (3)

Changed 4 years ago by phobie

comment:1 Changed 4 years ago by augustus.kling@…

  • Priority changed from major to critical

This error seems to occur whenever you are creating relations and parent relations without uploading in between. If JOSM tries to upload the parent relation before uploading their children (and updating their ids), the server refuses it because the parent relation would contain references to non-existent child-relations.

Thus (if my assumption is correct) the error should not occur if JOSM would upload in the following order:
1) Open changeset
2) Upload nodes
3) Update local references (with ids received from server for new nodes)
4) Upload ways
5) Update local references
6) Upload relations were all members have ids given by server
7) Update local references
8) Repeat steps 6 and 7 until all relations are uploaded
9) Close changeset

I increased the priority because the error leads into loosing of work as the user needs to delete and recreate relations to upload successfully.

comment:2 Changed 4 years ago by Gubaer

  • Resolution set to fixed
  • Status changed from new to closed

(In [2168]) fixed #3304: Upload failed - Placeholder Relation not found
fixed #2353: Wrong relation upload order results in 512 Precondition Failed
Warning: this is going to break plugins which register Upload Hooks. These plugins will be fixed shortly.

Add Comment

Modify Ticket

Change Properties
<Author field>
Action
as closed .
as The resolution will be set. Next status will be 'closed'.
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.