WeBankFinTech / DataSphereStudio

DataSphereStudio is a one stop data application development& management portal, covering scenarios including data exchange, desensitization/cleansing, analysis/mining, quality measurement, visualization, and task scheduling.
https://github.com/WeBankFinTech/DataSphereStudio-Doc
Apache License 2.0
3.08k stars 1k forks source link

dss发布工作流至schedulis报错 #278

Closed Tandoy closed 3 years ago

Tandoy commented 3 years ago

INFO [project-publish1] com.webank.wedatasphere.dss.server.lock.LockAspect 80 around - 执行过程出现异常 java.lang.NullPointerException: null at sun.net.util.URLUtil.urlNoFragString(URLUtil.java:50) ~[?:1.8.0_231] at sun.misc.URLClassPath.getLoader(URLClassPath.java:522) ~[?:1.8.0_231] at sun.misc.URLClassPath.getNextLoader(URLClassPath.java:494) ~[?:1.8.0_231] at sun.misc.URLClassPath.getResource(URLClassPath.java:248) ~[?:1.8.0_231] at java.net.URLClassLoader$1.run(URLClassLoader.java:366) ~[?:1.8.0_231] at java.net.URLClassLoader$1.run(URLClassLoader.java:363) ~[?:1.8.0_231] at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_231] at java.net.URLClassLoader.findClass(URLClassLoader.java:362) ~[?:1.8.0_231] at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[?:1.8.0_231] at com.webank.wedatasphere.dss.appjoint.clazzloader.AppJointClassLoader.loadClass(AppJointClassLoader.java:57) ~[dss-appjoint-loader-0.9.0.jar:?] at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_231] at com.webank.wedatasphere.dss.appjoint.clazzloader.AppJointClassLoader.loadClass(AppJointClassLoader.java:52) ~[dss-appjoint-loader-0.9.0.jar:?] at com.webank.wedatasphere.dss.appjoint.scheduler.azkaban.tuning.AzkabanProjectTuning.(AzkabanProjectTuning.java:24) ~[?:?] at com.webank.wedatasphere.dss.appjoint.scheduler.azkaban.AzkabanSchedulerAppJoint.getProjectTuning(AzkabanSchedulerAppJoint.java:67) ~[?:?] at com.webank.wedatasphere.dss.server.service.impl.DSSProjectServiceImpl.publish(DSSProjectServiceImpl.java:267) ~[dss-server-0.9.0.jar:?] at com.webank.wedatasphere.dss.server.service.impl.DSSProjectServiceImpl$$FastClassBySpringCGLIB$$5fce731a.invoke() ~[dss-server-0.9.0.jar:?] at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) ~[spring-core-5.0.7.RELEASE.jar:5.0.7.RELEASE] at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:746) ~[spring-aop-5.0.7.RELEASE.jar:5.0.7.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.0.7.RELEASE.jar:5.0.7.RELEASE] at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:88) ~[spring-aop-5.0.7.RELEASE.jar:5.0.7.RELEASE] at com.webank.wedatasphere.dss.server.lock.LockAspect.around(LockAspect.java:76) [dss-server-0.9.0.jar:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_231] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_231] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_231]

Tandoy commented 3 years ago

前提:调度工具由zakaban替换为微众开源schedulis

1.由于在修复无法创建工程时将dss-azkaban-scheduler-appjoint的jar版本进行了降级,与dss-0.9.0版本不一致,导致LinkisAzkabanFlowTuning等一系列类无法加载

1.1 将dss-azkaban-scheduler-appjoint-0.9.0.jar下载放至/home/appuser/dss-dist/dss-appjoints/schedulis/lib

2.由于dss在对dss工作流转换成scheduler工程中需要第三方插件linkis-jobtype,还需对其配置进行修改

2.1 修改/home/appuser/linkis-jobtype/linkis/private.properties,将类加载以及jar地址替换成schedulis
    jobtype.class=com.webank.wedatasphere.schedulis.jobtype.util.AzkabanDssJobType
    jobtype.lib.dir=/appcom/Install/AzkabanInstall/wtss-exec/plugins/jobtypes/linkis/lib
2.2 修改/home/appuser/linkis-jobtype/linkis/bin/config.sh,修改调度工具的执行路径
    ##Azkaban executor  dir
    AZKABAN_EXECUTOR_DIR=/appcom/Install/AzkabanInstall/wtss-exec