View Issue Details

IDProjectCategoryView StatusLast Update
0007403GNUnetnamestore servicepublic2022-10-19 09:26
Reporterschanzen Assigned Toschanzen  
PrioritynormalSeveritytweakReproducibilityhave not tried
Status assignedResolutionopen 
Summary0007403: Fix NAMESTORE REST POST/PUT and add PATCH
DescriptionGET /namestore/$ZNAME

Should return an ETag set to the hash of the record set (see below).

POST /namestore/$ZNAME

is not ideal, as it doesn't allow the client to ensure that it didn't
accidentally (!) change an existing record. I would use POST only to create a
new resource (and fail with 409 conflict if the given name already exists).
You could also just use POST /namestore/$ZONE/$LABEL for this and not have the
label in the record set. Then, for updates, we should use PATCH
/namestore/$ZONE/$LABEL. PATCH should use If-not-modified with the ETag from
the GET to make the operation atomic: if someone else did a PATCH since the
GET, the PATCH would fail. A client could then set the If-not-modified header
to ensure atomic updates, or omit it to override whatever record is there
without worrying about atomicity. PATCH without If-not-modified would then
also give you UPSERT (update and if not exists insert)
TagsNo tags attached.


There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2022-10-19 09:07 schanzen New Issue
2022-10-19 09:07 schanzen Issue generated from: 0007400
2022-10-19 09:08 schanzen Relationship added parent of 0007402
2022-10-19 09:08 schanzen Relationship deleted parent of 0007402
2022-10-19 09:09 schanzen Relationship added child of 0007404
2022-10-19 09:10 schanzen Relationship deleted child of 0007404
2022-10-19 09:26 schanzen Assigned To => schanzen
2022-10-19 09:26 schanzen Status new => assigned