Five Stars

Exception in component connectionStatsLogs

I am trying to run a job which was built by a different developer who I cannot get in touch with.  

 

The job shows a comiple errror.  From the error it looks like there is a string REPLACEWITHYOURPASSWORD somewhere in the code which is not enclosed in quotes thus it is expecting it to be a variable.  But am not able to find where exactly it is in the code.

 

org.talend.designer.runprocess.ProcessorException: Job compile errors
At least job "jobname" has a compile errors, please fix and export again.
Error Line: 15697
Detail Message: REPLACEWITHYOURPASSWORD cannot be resolved to a variable
There may be some other errors caused by JVM compatibility. Make sure your JVM setup is similar to the studio.
at org.talend.designer.runprocess.JobErrorsChecker.checkLastGenerationHasCompilationError(JobErrorsChecker.java:328)
at org.talend.designer.runprocess.DefaultRunProcessService.checkLastGenerationHasCompilationError(DefaultRunProcessService.java:380)
at org.talend.designer.runprocess.RunProcessService.checkLastGenerationHasCompilationError(RunProcessService.java:292)
at org.talend.designer.runprocess.ProcessorUtilities.generateBuildInfo(ProcessorUtilities.java:656)
at org.talend.designer.runprocess.ProcessorUtilities.generateCode(ProcessorUtilities.java:545)
at org.talend.designer.runprocess.ProcessorUtilities.generateCode(ProcessorUtilities.java:1506)
at org.talend.designer.runprocess.RunProcessContext$1.run(RunProcessContext.java:577)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:466)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:374)
at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:527)
at org.eclipse.ui.internal.progress.ProgressMonitorJobsDialog.run(ProgressMonitorJobsDialog.java:284)
at org.eclipse.ui.internal.progress.ProgressManager.run(ProgressManager.java:1190)
at org.talend.designer.runprocess.RunProcessContext.exec(RunProcessContext.java:532)
at org.talend.designer.runprocess.ui.ProcessComposite.exec(ProcessComposite.java:1450)
at org.talend.designer.runprocess.ui.views.ProcessView$RunAction.run(ProcessView.java:691)
at org.talend.designer.runprocess.ui.actions.RunProcessAction.run(RunProcessAction.java:58)
at org.talend.designer.core.debug.JobLaunchConfigurationDelegate$1.run(JobLaunchConfigurationDelegate.java:84)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:136)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3983)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
at org.talend.rcp.intro.Application.start(Application.java:255)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
at org.eclipse.equinox.launcher.Main.run(Main.java:1465)

 

I am using Talend Open Studio and in the code view, I see this code at line '15697' as mentioned in the error above.

final String decryptedPassword_connectionStatsLogs = REPLACEWITHYOURPASSWORD;

 

Ideally I would like to update this with a context variable but am not able to edit this in the code view in TOS.  Is there a search feature in talend that would point me to the component in which a particular variable is used?

 

If it is of any help, this error is happening in the connectionStatsLogsProcess class.

public void connectionStatsLogsProcess(
final java.util.Map<String, Object> globalMap)
throws TalendException {
globalMap.put("connectionStatsLogs_SUBPROCESS_STATE", 0);

final boolean execStat = this.execStat;

String iterateId = "";

String currentComponent = "";
java.util.Map<String, Object> resourceMap = new java.util.HashMap<String, Object>();

try {

String currentMethodName = new java.lang.Exception()
.getStackTrace()[0].getMethodName();
boolean resumeIt = currentMethodName.equals(resumeEntryMethodName);
if (resumeEntryMethodName == null || resumeIt || globalResumeTicket) {// start
// the
// resume
globalResumeTicket = true;

/**
* [connectionStatsLogs begin ] start
*/

ok_Hash.put("connectionStatsLogs", false);
start_Hash.put("connectionStatsLogs",
System.currentTimeMillis());

currentComponent = "connectionStatsLogs";

int tos_count_connectionStatsLogs = 0;

class BytesLimit65535_connectionStatsLogs {
public void limitLog4jByte() throws Exception {

}
}

new BytesLimit65535_connectionStatsLogs().limitLog4jByte();

String url_connectionStatsLogs = "jdbc:mysql://"
+ context.mySqlHost + ":" + context.mySqlPort + "/"
+ context.mySqlDatabase + "?"
+ "rewriteBatchedStatements=true";

String dbUser_connectionStatsLogs = context.mySqlUsername;

final String decryptedPassword_connectionStatsLogs = REPLACEWITHYOURPASSWORD;
String dbPwd_connectionStatsLogs = decryptedPassword_connectionStatsLogs;

java.sql.Connection conn_connectionStatsLogs = null;

1 ACCEPTED SOLUTION

Accepted Solutions
Moderator

Re: Exception in component connectionStatsLogs

Hello,

Talend provides user with Stat&log in project setting and Stat&log in job view.
Stat&log in project setting is working on the whole project (Parent job and child jobs, and output them on file/DB but no context setting). You can go to project setting-->Job settings-->Stats&Logs
Stat&log in job view is working on the current job (you should set Stat&log of job view in both parent job and child jobs and output them on file/DB with context setting.

For more information, please have a look at my screenshots.

1.png2.png

Best regards

Sabrina

--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
3 REPLIES
Moderator

Re: Exception in component connectionStatsLogs

Hello,

Did you have misconfigured parameter "Db Version" in "Stats & Logs"?

Best regards

Sabrina

--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
Five Stars

Re: Exception in component connectionStatsLogs

Hi Sabrina,

 

Thanks for getting back.  Am not sure how to check the "stats and logs" configuration.  Is it a project level setting?  If yes then how can I get there?

 

In the job design I don't see "stats & logs" or "tstatcatcher" anywhere.

 

Thanks

Harish

Moderator

Re: Exception in component connectionStatsLogs

Hello,

Talend provides user with Stat&log in project setting and Stat&log in job view.
Stat&log in project setting is working on the whole project (Parent job and child jobs, and output them on file/DB but no context setting). You can go to project setting-->Job settings-->Stats&Logs
Stat&log in job view is working on the current job (you should set Stat&log of job view in both parent job and child jobs and output them on file/DB with context setting.

For more information, please have a look at my screenshots.

1.png2.png

Best regards

Sabrina

--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.