[omniORB] MARSHAL_InvalidValueTag

Duncan Grisby duncan at grisby.org
Thu Mar 19 11:58:42 GMT 2015


On Wed, 2015-03-11 at 16:26 +0100, alexander.silier at eisenmann.com wrote:

> I am receiving a CORBA::MARSHAL MARSHAL_InvalidValueTag exception.
> 
> omniORB: (0) 2015-03-11 16:05:53.557000: Create input value
> indirection tracker
> omniORB: (0) 2015-03-11 16:05:53.557000: Unmarshal value
> 'RMI:com.eisenmann.penta.interf.share.exceptions.CreationException:F464EBE1775992EC:0000000000000001'.
> omniORB: (0) 2015-03-11 16:05:53.557000: throw MARSHAL from
> valueType.cc:341 (YES,MARSHAL_InvalidValueTag)

[...]
> What is causing the MARSHAL_InvalidValueTag? What does InvalidValueTag
> mean?

It means that omniORB received data that it thinks is an invalid
encoding of a valuetype. Valuetypes are marshalled in a pretty complex
way, with parts of the data indicated by tags. The exception means that
omniORB was looking for a tag, and got an invalid value that doesn't
look like a value tag.

There might be several reasons for that:

1. omniORB and the other end have seen different IDL definitions,
meaning that omniORB is encountering something that wasn't sent as a
value tag.

2. The sending ORB is buggy and has encoded the valuetype incorrectly.

3. omniORB has a bug and it is misinterpreting a valid valuetype
encoding.


Assuming it's not a simple case of mismatched IDL, the question becomes
which end has got it wrong. If you send your complete IDL for all the
types involved, and get a trace from traceLevel 40, it will be possible
to unpick all the data and work out what's going wrong.

Duncan.

-- 
 -- Duncan Grisby         --
  -- duncan at grisby.org     --
   -- http://www.grisby.org --





More information about the omniORB-list mailing list