I am using Java EMA API and using batch to fetch data from Elektron. I get the following error, when RICs are sent using batch array,
Exception in thread "main" Exception Type='OmmInvalidUsageException', Text='Failed to rsslElementEntry.encode() while encoding rssl elementlist. Reason='INVALID_DATA'', Error Code='-29'
This error appears on execution of the following line,
When I divided the RICs into multiple files, to check for the RIC which is creating this error. This error stopped coming. I am attaching here txt file of RIC codes which throws this error. Can anybody help me resolve this error? and what is the cause?
There is a 65535 byte limit on the size of the ElementList entry that is used when making the Batch request. - therefore you will need to split your request into multiple batches - each being less than 64KB. Depending on the average size of your RIC codes, this could be anywhere between 3k-6k RICs per batch.
Personally I would just request each instrument individually - in a loop with some throttling/pacing of the request - e.g. send a thousand, pause a moment and send some more..NOTE - this is a personal choice as I don't like the added complication of ensuring each of my batches is less than 64KB