One Star

we are getting code size exceeding the 65535 bytes limit error

hi,
please provide the solution for the below mentioned issue.
Issue: if i eanble CSV Option in iFileInputDelimited component, in the code for the job we are getting size exceed error.
In this job we have arround 180 field in the schema(tJavaRow component), even some time tJavaRow_2 component if we are adding more code same error we are getting. we can't able to implement more changes in this job,
please provide solution or suggession to overcome this issue.
Error Message: The code of method tFileInputDelimited_1Process(Map<String,Object>) is exceeding the 65535 bytes limit
Error Method Code: public void tFileInputDelimited_1Process(
final java.util.Map<String, Object> globalMap)
throws TalendException {
globalMap.put("tFileInputDelimited_1_SUBPROCESS_STATE", 0);
Talend Software: "Talend Integration Suite - Team Edition"
Version: 4.0.2
Thanks in advance,
G.Suresh
11 REPLIES
One Star

Re: we are getting code size exceeding the 65535 bytes limit error

Hi
This is a limitation of the JVM. According to Java specifications, the amount of code for this non-native, non-abstract method is limited to a size of 65536 bytes.
That means the job has too many components or columns. Try to simplify your job or split it into several jobs.
Regards,
Pedro
One Star

Re: we are getting code size exceeding the 65535 bytes limit error

Hi,
thanks for your reply.
You meant to say, need to split into multiple tRunJobs like main job linked with child jobs or any other split avilable in Talend
Thanks,
G.Suresh.
One Star

Re: we are getting code size exceeding the 65535 bytes limit error

Hi G.Suresh
Yes. You might try it if possible.
Regards,
Pedro
One Star

Re: we are getting code size exceeding the 65535 bytes limit error

Hi pedro,
other then that, is there any other solution. because i need to check if i split the job, it's not impacting existing behaviour.
it's quite complex. so please give any other solution for the issue.
Thanks,
G.Suresh.
One Star

Re: we are getting code size exceeding the 65535 bytes limit error

Hi
Please show me the screenshot of your job.
Regards,
Pedro
One Star

Re: we are getting code size exceeding the 65535 bytes limit error

hi,
i couldn't able attach screen shot, even it's size is 51KB only.
in this also i am trying with gif image in the Image Upload
Thanks,
G.Suresh.
One Star

Re: we are getting code size exceeding the 65535 bytes limit error

Hi
Please notice the limit: 20 images per post, each image must be less then 1024x768 pixels and 200 KB.
Regards,
Pedro
One Star

Re: we are getting code size exceeding the 65535 bytes limit error

hi,
Please find the attached screen shot and provide the solution for this.
Thanks,
G.Suresh
One Star

Re: we are getting code size exceeding the 65535 bytes limit error

Hi
Judging from this image, you have no choice but to split this job into several jobs.
If you are using Talend Integration Suite(Commercial Version), dynamic schema might help you.
But for Talend Open Studio, you have to simplify the job.
Regards,
Pedro
One Star

Re: we are getting code size exceeding the 65535 bytes limit error

hi,
how to pass the value to sub jobs and in subjob how to proceed that value to further (through row_main) process
please provide any sample.
thanks,
G.Suresh
One Star

Re: we are getting code size exceeding the 65535 bytes limit error

Do you need all the columns in your db input queries? Can you do the joins in a single query? What's the rest of the job doing?
You could split on your tFileOutputDelimited and use it as a tFileInputDelimited to the next job. That won't change any of the logic.