What to do when Talend gets its knickers in a twist?

If you’ve done any significant amount of work with Talend you’ll undoubtedly have experienced situations where either the generated code/JETemitters or the GUI representation of a job become unstable like so…

Talend loses the plot!

The usual advice is to backup your projects (workspace/projectName) , delete the workspace/.Java (or .Perl) and workspace/.JETEmitters folders and restart Talend to force a rebuild of the generated code.  I’ve have varying degrees of success with this approach, from it fixing the problem to the other extreme of the project raising the dreaded “null pointer” error never to load again!  Also, in such a situation, don’t depend on the in-built backup facility (particularly if it’s showing errors on the export), make a copy of the project folder directly (in particular, the process folder).

I’ve found the most reliable method to untwist such messes is to create a brand new Talend installation (unzip download file into another folder), create a new project (don’t use the front screen’s import functionality); within this new project, use the import item facility, import the required jobs from the corrupted project and the resulting project should now work OK.

If the job wouldn’t compile due to its inability to find standard Talend classes (this applies to Java projects, switch to the code view and click on the red spots on the right hand side to see the errors), just saving the job, exiting and restarting Talend should fix this problem.

Sometimes however, as with the screenshot above, none of the above will work.  Remedying this required me to edit the job’s .item file’s XML directly (the bug that caused this was seen in a 2.4 RC release, it thankfully appears to have fixed in the production release).  Editing a job’s XML is not for the faint hearted, but it is possible and with the knowledge gained from studying the XML structure you may find such experience useful (as I did) in the mass-editing  of jobs.  In fact, I’ve used Talend’s own data integration functionality to mass generate Talend jobs, demonstrating again the power of this continually improving product!

Advertisements

3 responses to “What to do when Talend gets its knickers in a twist?

  1. Hi Tom,
    Good to see another informative post from you. I have had issues with Talend messing up object names in the GUI window and such. Since I am new to Talend, first time it was hard to figure out what was going wrong. Your tips will be helpful.

    Another issue I have not solved is keeping my delivered code intact. So if I deliver some packaged perl code generated from Talend, I am keeping the whole Talend directory intact and not upgrade it at all. So I will be having as many Talend directories as projects/jobs. Fortunately (or unfortunately) I have just a few independent clients so far. This way, I can fire up Talend from the relevant directory and have my project 100% as I delivered it to my client. I am going to have issues if I upgrade any packages used inside PERL but that has not happened yet.

    I love Talend regardless of this issue because of its code generating ability.

    Keep Writing.

  2. @Sean

    I tend to have a project directory where I store generated JARS (I mainly use Java Projects), supporting files, databases, data extracts etc., along with versioned exports of the project. I then backup up these project folders to S3 (via JungleDisk, which I recommend).

    I’ve been considering using a source management system (either SVN, or the latest wunder-kid on the block, GIT), to better manage the process. My wish to move to a source control environment is behind my efforts to better understand the textual source of Talend projects (.item XML files) as well as the minimum necessary to safely backup a project.

    Talend themselves are very likely to add better project/multi-user management tools as time goes by (probably as paid enterprise features).

    Tom

  3. Pingback: passing records from CSV into SugarCRM