数据流运行器和jaydebeapi出现问题一次性问题

问题描述

我们在此事件中引用的有关数据流管道的信息:

  • 管道负责将数据从Oracle源移动到BigQuery;
  • 管道使用python3.6编写;
  • 它使用ojdbc,jdk和jaydebeapi;
  • 在我们的代码中确保在执行之前,所有必需的库等始终安装在所有Data Flow Worker上。

问题描述: 21/10我们遇到了数据流工作者(在Europe-west3地区)的问题-参见以下日志。似乎无法加载或使用jaydebeapi库。

2020-10-21 17:28:42.792 CEST来自工作人员的错误消息:追溯(最近一次通话最后一次):文件apache_beam.runners.common.DoFnRunner._invoke_bundle_method中的“ apache_beam / runners / common.py”行997在apache_beam.runners.common.DoFnInvoker.invoke_start_bundle中,文件“ apache_beam / runners / common.py”,行490,在apache_beam.runners.common.DoFnInvokerin中,文件“ apache_beam / runners / common.py”,行496。 /usr/local/lib/python3.7/site-packages/libs/dataflow/common.py“,第269行,位于start_bundle jars = [f” /tmp/{self.ojdbc_lib}“]文件” / usr / local /lib/python3.7/site-packages/jaydebeapi/init.py”,第412行,在connect jconn = _jdbc_connect(jclassname,url,driver_args,jars,libs)文件“ / usr / local /lib/python3.7/site-packages/jaydebeapi/init.py”,第199行,位于_jdbc_connect_jpype convertStrings = True)文件“ /usr/local/lib/python3.7/site-packages /jpype/_core.py“,在startJVM中的第216行,ignoreUnrecognized,convertStrings,interrupt)SystemError :java.lang.classNotFoundException:org.jpype.classloader.DynamicclassLoader在处理上述异常期间,发生了另一个异常:追溯(最近一次调用为最后):文件“ /usr/local/lib/python3.7/site-packages/ do_work work_executor.execute()中第638行的dataflow_worker / batchworker.py”,执行op.start()中的文件“ /usr/local/lib/python3.7/site-packages/dataflow_worker/executor.py”,第179行)在apache_beam.runners.worker.operations.DoOperation.start文件“ apache_beam / runners / worker / operations.py”(行662)中,在apache_beam.runners中的文件“ apache_beam / runners / worker / operations.py”,行664。在apache_beam.runners.worker.operations.DoOperation.start文件“ apache_beam / runners / common.py”,行1014中的worker.operations.DoOperation.start文件“ apache_beam / runners / worker / operations.py”,行666中apache_beam.runners.common.DoFnRunner.start文件“ apache_beam / runners / common.py”,第999行,在apache_beam.runners.common.DoFnRunner._invoke_bundle_method文件“ apache_beam / runners / com”中mon.py”,第1045行,位于apache_beam.runners.common.DoFnRunner._reraise_augmented文件“ /usr/local/lib/python3.7/site-packages/future/utils/init.py”中第446行,在raise_with_traceback中,提高exc.with_traceback(traceback)文件“ apache_beam / runners / common.py”,第997行,在apache_beam.runners.common.DoFnRunner._invoke_bundle_method文件中,“ apache_beam / runners / common.py”,第490行,在apache_beam.runners.common.DoFnInvoker.invoke_start_bundle文件中,第496行,在apache_beam.runners.common.DoFnInvoker.invoke_start_bundle文件“ /usr/local/lib-python3.7”中包/库/数据流/common.py”,第269行,位于start_bundle jars = [f“ /tmp/{self.ojdbc_lib}”]文件“ /usr/local/lib/python3.7/site-packages/jaydebeapi/连接中的 init .py”行412 = jdbc_connect(jclassname,url,driver_args,jar,libs)文件“ /usr/local/lib/python3.7/site-packages/jaydebeapi/ init .py”,第199行,在_jdbc_connect_jpype convertStrings = True中) startJVM中的文件“ /usr/local/lib/python3.7/site-packages/jpype/_core.py”第216行,ignoreUncognized,convertStrings,interrupt)SystemError:java.lang.classNotFoundException:org.jpype.classloader.DynamicclassLoader [在运行“从Oracle源中读取/从数据库中读取”时

再次运行完全相同的代码后,问题出现了好几次,然后消失了,并且使用相同的代码,一切正常。你知道会发生什么吗?在我们看来,这与基础架构/员工配置等有关。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...