Hitachi Vantara Pentaho Community Forums
Results 1 to 2 of 2

Thread: Unable to run xaction in BI Server to run a PDI repository job

  1. #1
    Join Date
    Oct 2013
    Posts
    18

    Default Unable to run xaction in BI Server to run a PDI repository job

    Hello!

    I am using BI Server 4.8.0 and Data Integration 4.1.0 in a MySQL repository mode.
    I created a job that calls several transformations to realize the ETL, and want to call it from the BI Server using a xaction of type kettle component.
    The job is running perfectly smooth using Spoon.
    I already did the following 3 steps, and restart the bi server so it takes changes and when I try to run the xaction I keep having the following error.

    Any ideas please!!!???

    Code:
    The Pentaho BI Platform reported an error while running an action sequence
    
    Possible Causes:RuntimeContext.ERROR_0017 - Action failed to execute
    
    Action Sequence:ETL-job.xaction
    Execution Stack:EXECUTING ACTION: ETL-Job (KettleComponent)
    
    Loop Index (1-based):0
    Error Time:Tuesday, January 28, 2014 12:01:23 PM EST
    Error Type:ActionExecutionException
    Session ID:joe
    Instance Id:b495ae14-87b7-11e3-b596-152a5b4a0308
    Action Class:KettleComponent
    Action Description:ETL-Job
    
    Hide Details
    Stack Trace:org.pentaho.platform.api.engine.ActionExecutionException: RuntimeContext.ERROR_0017 - Action failed to execute
        at org.pentaho.platform.engine.services.runtime.RuntimeContext.executeComponent(RuntimeContext.java:1325)
        at org.pentaho.platform.engine.services.runtime.RuntimeContext.executeAction(RuntimeContext.java:1262)
        at org.pentaho.platform.engine.services.runtime.RuntimeContext.performActions(RuntimeContext.java:1161)
        at org.pentaho.platform.engine.services.runtime.RuntimeContext.executeLoop(RuntimeContext.java:1105)
        at org.pentaho.platform.engine.services.runtime.RuntimeContext.executeSequence(RuntimeContext.java:987)
        at org.pentaho.platform.engine.services.runtime.RuntimeContext.executeSequence(RuntimeContext.java:897)
        at org.pentaho.platform.engine.services.solution.SolutionEngine.executeInternal(SolutionEngine.java:399)
        at org.pentaho.platform.engine.services.solution.SolutionEngine.execute(SolutionEngine.java:317)
        at org.pentaho.platform.engine.services.solution.SolutionEngine.execute(SolutionEngine.java:193)
        at org.pentaho.platform.engine.services.BaseRequestHandler.handleActionRequest(BaseRequestHandler.java:159)
        at org.pentaho.platform.web.servlet.ViewAction.handleActionRequest(ViewAction.java:167)
        at org.pentaho.platform.web.servlet.ViewAction.doGet(ViewAction.java:316)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.pentaho.platform.web.http.filters.PentahoWebContextFilter.doFilter(PentahoWebContextFilter.java:142)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.pentaho.platform.web.http.filters.PentahoRequestContextFilter.doFilter(PentahoRequestContextFilter.java:84)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
        at org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
        at org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
        at org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101)
        at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
        at org.pentaho.platform.web.http.security.SecurityStartupFilter.doFilter(SecurityStartupFilter.java:103)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
        at org.springframework.security.providers.anonymous.AnonymousProcessingFilter.doFilterHttp(AnonymousProcessingFilter.java:105)
        at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
        at org.pentaho.platform.web.http.security.RequestParameterAuthenticationFilter.doFilter(RequestParameterAuthenticationFilter.java:169)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
        at org.springframework.security.ui.basicauth.BasicProcessingFilter.doFilterHttp(BasicProcessingFilter.java:174)
        at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
        at org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:278)
        at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
        at org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:89)
        at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
        at org.pentaho.platform.web.http.security.HttpSessionReuseDetectionFilter.doFilter(HttpSessionReuseDetectionFilter.java:134)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
        at org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235)
        at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
        at org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter.doFilterHttp(SecurityContextHolderAwareRequestFilter.java:91)
        at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
        at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
        at org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:175)
        at org.springframework.security.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:99)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.pentaho.platform.web.http.filters.SystemStatusFilter.doFilter(SystemStatusFilter.java:60)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.pentaho.platform.web.http.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:113)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
     at java.lang.Thread.run(Thread.java:679) 


    1) I created in the hidden directory ~/.kettle the file repositories.xml with the information of the localization of the PDI repositories.
    2) I configured the
    file settings.xml in pentaho-solutions/system/kettle to use rdbms, add repository name ‘PDI_backup’

    Code:
    <kettle-repository>
    
    
      <!-- The values within <properties> are passed directly to the Kettle Pentaho components. -->
           
        <!-- This is the location of the Kettle repositories.xml file, leave empty if the default is used: $HOME/.kettle/repositories.xml -->
        <repositories.xml.file></repositories.xml.file>
    
    
        <repository.type>rdbms</repository.type>
    
    
        <!--  The name of the repository to use -->
        <repository.name>PDI_backup</repository.name>
        
        <!--  The name of the repository user -->
        <repository.userid>admin</repository.userid>
        
        <!--  The password -->
        <repository.password>admin</repository.password>
            
    </kettle-repository>
    3) I created my xaction and uploaded using FTP to the BI Server
    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <action-sequence> 
      <title>ETL-job</title>
      <version>1</version>
      <logging-level>ERROR</logging-level>
      <documentation> 
        <author>acoronel</author>  
        <description>Empty blank action sequence document</description>  
        <help/>  
        <result-type/>  
        <icon/> 
      </documentation>
    
    
      <inputs/>
    
    
      <outputs/>
    
    
      <resources/>
      
      <actions> 
        <action-definition> 
          <component-name>KettleComponent</component-name>
          <action-type>ETL-Job</action-type>
          <action-resources/>
          <component-definition> 
            <directory><![CDATA[/DWH-ETL]]></directory>  
            <job><![CDATA[ETL]]></job> 
          </component-definition> 
        </action-definition>
     
      </actions> 
    </action-sequence>

  2. #2
    Join Date
    Oct 2013
    Posts
    18

    Default

    All good now!!!

    I searched in the catalina.out log and found I was having a "metadata load error".
    Turns out the problem was that I updated the name of one directory using Spoon, and the transformation was not even running there. Doh....

    At least is good to know that the 3 steps I followed to configure xaction for running repository PDI jobs were correct.

    Yeih!!!

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Privacy Policy | Legal Notices | Safe Harbor Privacy Policy

Copyright © 2005 - 2019 Hitachi Vantara Corporation. All Rights Reserved.