diff options
Diffstat (limited to 'lib/orber/doc/src/ifr_notes.txt')
-rw-r--r-- | lib/orber/doc/src/ifr_notes.txt | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/lib/orber/doc/src/ifr_notes.txt b/lib/orber/doc/src/ifr_notes.txt new file mode 100644 index 0000000000..54f79be8cd --- /dev/null +++ b/lib/orber/doc/src/ifr_notes.txt @@ -0,0 +1,53 @@ +-*-Mode: Outline;-*- + +* Transactions. + Transaction handling (or the use of mnesia:async_dirty) is not very + good at error checking. Code to handle errors from transactions must + be added. Right now it is not possible to mix atomic transactions + with dirty 'transactions' (i.e. async_dirty) and still check the + results consistently. This must be fixed if we are to read with + async_dirty instead of transaction, since we still want to do all + the writes with transaction and not async_dirty. + (This point might be moot. Simple reads are now done with + mnesia:dirty_read/1 outside of transactions). + +* Unresolved issues. + There are some places in the source code marked with '***' where the + code should be verified. It mostly concerns minor unresolved + unclarities in the specification. + +** orber_ifr_contained.erl + In move/4 there is a call to orber_ifr_contained:lookup_name/5. The + third argument, Levels_to_search, is set to -1, which means search + all contained objects. This is probably correct. + +** orber_ifr_interfacedef.erl + The function describe_interface/1 describes the interface without + its inherited interfaces. It is not clear whether this is correct or + not. It is possible to get a description of the inherited interfaces + by mapping describe_interface/1 on the list if interfaces returned + by get_base_interfaces/1. Also, since the structs + InterfaceDescription and FullInterfaceDescription both have a field + named base_interfaces, it is possible to get a description of the + inherited attributes by examining that field and applying a describe + function. + +** orber_ifr_orb.erl + create_union_tc/4 sets the fifth element in the typecode tuple to + -1, meaning no default case. + +** orber_ifr_repository.erl + The PrimitiveDef with kind pk_objref has an empty Id and an empty + Name. This is perhaps not correct. + +** orber_ifr_typecode.erl + None of the functions in this module are fully implemented and they + should not be used. + +** orber_ifr_uniondef.erl +*** '_set_members'/2 + What should the value of the discriminator-typecode be when updating + the type attribute? (CORBA 2.0, p 6-20). For now we just leave it + unchanged, but this is perhaps not the right thing to do. + +* Exceptions should give more information about the failure. |