Details
-
Task
-
Resolution: Unresolved
-
Major - P3
-
None
-
None
-
None
-
None
-
Service Arch
Description
Currently, it is not supported to have more than one level of chained structs. There does not seem to be a particular reason for such limitation other than avoiding to have to check for circular dependencies.
This arbitrary limitation is providing developers from using IDLs for some trivial use cases as the one from the example below:
struct:
|
Base:
|
description: "..."
|
fields:
|
a:
|
description: "a"
|
type: int
|
|
Specialization:
|
description: "..."
|
chained_structs:
|
Base: Base
|
fields:
|
b:
|
description: "b"
|
type: int
|
|
|
SpecializationOfSpecialization:
|
description: "..."
|
chained_structs:
|
Specialization: Specialization
|
With the above code, the IDL generator returns the following error: Struct 'SpecializationOfSpecialization' is not allowed to nest struct 'Specialization' since it has chained structs and/or types.
Attachments
Issue Links
- is depended on by
-
SERVER-63202 IDL-ize RenameCollectionOptions
-
- Blocked
-
-
SERVER-81447 Rewrite create collection path with multi-level chained structs
-
- Blocked
-