aboutsummaryrefslogtreecommitdiffstats
path: root/lib/orber/doc/src/ifr_notes.txt
diff options
context:
space:
mode:
Diffstat (limited to 'lib/orber/doc/src/ifr_notes.txt')
-rw-r--r--lib/orber/doc/src/ifr_notes.txt53
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.