RFC 7643 @ section 3.1 mandates that the meta attributes have a "returned" characteristic equal to "default".
This contrasts with the logic of attribute inclusion (and exclusion, ie. projection).
Namely,
attributes A multi-valued list of strings indicating the names of
resource attributes to return in the response, overriding the set
of attributes that would be returned by default.
So, at the end when we specify to include only some attributes we lose the meta ones.
This causes panics in the code since within the storage/mongo/adapater.go::toResource() method we expect/assume the dd["meta"] cannot be nil.
RFC 7643 @ section 3.1 mandates that the
meta
attributes have a "returned" characteristic equal to "default".This contrasts with the logic of attribute inclusion (and exclusion, ie. projection).
Namely,
Ref.
Ref.
Our projection logic follows the RFC logic.
So, at the end when we specify to include only some attributes we lose the meta ones. This causes panics in the code since within the
storage/mongo/adapater.go::toResource()
method we expect/assume thedd["meta"]
cannot be nil.cc @leogr @alelb @samechelon