Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi Community, I'm working on a Talend Data Integration job and running into a persistent issue that I’ve exhausted all reasonable workarounds on.
Error Message: The code of method tDBInput_3Process(Map<String,Object>) is exceeding the 65535 bytes limit
Detail Message:This happens while reading from an Oracle table containing 851 columns. It appears to be related to Java’s method size restriction during Talend’s code generation process. I’d appreciate any guidance or best practices on how to handle very wide tables like this within Talend — whether through job design strategies, recommended components, or configuration adjustments that can help avoid this limit.
Hello @MohamedArsath ,
This is actually a pretty common issue when working with very wide tables in Talend or trying to add too many component in the same subjob. Java has a limit where a single method can’t go over 64KB of bytecode, and when Talend generates code for something like 800+ columns, it can easily hit that limit.
I see 3 main things you could do to solve your problem
1. Reduce the amount of columns you are using
Do you really need all of your columns ? If you don’t actually need all columns at once, you can create a database view or use a custom SELECT statement to only fetch what you need for a specific job.
2. Look into ELT components
If you’re working with databases, ELT components (like tELTInput and tELTMap) let you push logic to the database instead of Talend generating all the Java code. That can help avoid the method size limit.
3. Break the job into smaller parts
Sometimes it's better to split your "big job" into smaller subjobs that each handle a portion of the data. This way you avoid overloading one method with too much generated code.
If you need more help tell me
- Quentin
Hello @MohamedArsath ,
This is actually a pretty common issue when working with very wide tables in Talend or trying to add too many component in the same subjob. Java has a limit where a single method can’t go over 64KB of bytecode, and when Talend generates code for something like 800+ columns, it can easily hit that limit.
I see 3 main things you could do to solve your problem
1. Reduce the amount of columns you are using
Do you really need all of your columns ? If you don’t actually need all columns at once, you can create a database view or use a custom SELECT statement to only fetch what you need for a specific job.
2. Look into ELT components
If you’re working with databases, ELT components (like tELTInput and tELTMap) let you push logic to the database instead of Talend generating all the Java code. That can help avoid the method size limit.
3. Break the job into smaller parts
Sometimes it's better to split your "big job" into smaller subjobs that each handle a portion of the data. This way you avoid overloading one method with too much generated code.
If you need more help tell me
- Quentin