在HANA中创建远程源对象的虚拟对象时出错

2020-08-15 20:45发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在尝试从远程源PostgreSQL对象在HANA中创建虚拟对象,但是以某种方式行不通。

我可以在Catalog-> Remote Sources中看到对象,但是当我选择一个对象并尝试为其创建虚拟对象时,HANA会抛出异常:

发生执行错误:无效的远程对象名称:表'" pgsql_schema"。"雇员"'不存在。:行0 col 0(在pos 0)

DP代理报告的内容几乎相同:

 2020-07-02 18:34:26,022 [ERROR] DPFramework |  WorkerThread.processRequest-com.sap.hana.dp.adapter.sdk.AdapterException:表'" pgsql_schema"。"员工"不存在。 上下文:com.sap.hana.dp.adapter.sdk.AdapterException:表'" pgsql_schema"。"员工"不存在。
com.sap.hana.dp.postgresqllogreaderadapter.metadata.impl.MetaDataQuerier。 getMetadata(MetaDataQuerier.java:59)
com.sap.hana.dp.postgresqllogreaderadapter.SmartDataAccessSession.importMetadata(SmartDataAccessSession.java:251)
com.sap.hana.dp.postgresqllogreaderadapter.PostgreSQLLogReaderAdapter.importMetadata com.sap.hana.dp.adapter.sdk.decorator.AdapterCDCDelegate.importMetadata(AdapterCDCDelegate.java:133)
处com.sap.hana.dp.adapter.framework上的PostgreSQLLogReaderAdapter.java:192)
。 com.sap.hana.dp.adapter.framework.core.WorkerThread.processRequest(WorkerThread.java:259)
处的com.sap.hana处的core.WorkerThread.processImportMetadata(WorkerThread.java:1720)
。 dp.adapter.framework.core.WorkerThread.run(WorkerThread.java:2042)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
在java.util.concurrent.ThreadPoolExecuto r $ Worker.run(ThreadPoolExecutor.java:624)
在java.lang.Thread.run(Thread.java:836)

你知道为什么HANA告诉我该对象不存在,即使我100%确定它存在吗?

此致

尼尔斯

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在尝试从远程源PostgreSQL对象在HANA中创建虚拟对象,但是以某种方式行不通。

我可以在Catalog-> Remote Sources中看到对象,但是当我选择一个对象并尝试为其创建虚拟对象时,HANA会抛出异常:

发生执行错误:无效的远程对象名称:表'" pgsql_schema"。"雇员"'不存在。:行0 col 0(在pos 0)

DP代理报告的内容几乎相同:

 2020-07-02 18:34:26,022 [ERROR] DPFramework |  WorkerThread.processRequest-com.sap.hana.dp.adapter.sdk.AdapterException:表'" pgsql_schema"。"员工"不存在。 上下文:com.sap.hana.dp.adapter.sdk.AdapterException:表'" pgsql_schema"。"员工"不存在。
com.sap.hana.dp.postgresqllogreaderadapter.metadata.impl.MetaDataQuerier。 getMetadata(MetaDataQuerier.java:59)
com.sap.hana.dp.postgresqllogreaderadapter.SmartDataAccessSession.importMetadata(SmartDataAccessSession.java:251)
com.sap.hana.dp.postgresqllogreaderadapter.PostgreSQLLogReaderAdapter.importMetadata com.sap.hana.dp.adapter.sdk.decorator.AdapterCDCDelegate.importMetadata(AdapterCDCDelegate.java:133)
处com.sap.hana.dp.adapter.framework上的PostgreSQLLogReaderAdapter.java:192)
。 com.sap.hana.dp.adapter.framework.core.WorkerThread.processRequest(WorkerThread.java:259)
处的com.sap.hana处的core.WorkerThread.processImportMetadata(WorkerThread.java:1720)
。 dp.adapter.framework.core.WorkerThread.run(WorkerThread.java:2042)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
在java.util.concurrent.ThreadPoolExecuto r $ Worker.run(ThreadPoolExecutor.java:624)
在java.lang.Thread.run(Thread.java:836)

你知道为什么HANA告诉我该对象不存在,即使我100%确定它存在吗?

此致

尼尔斯

付费偷看设置
发送
3条回答
微wx笑
1楼-- · 2020-08-15 21:16

我能想到的几个可能的原因是:

  1. 在源系统中删除表/模式
  2. 对远程连接中使用的服务用户的模式权限
  3. 指向错误数据库的连接
  4. 对象(模式或表名)的拼写错误

希望您已经尝试过SELECT * FROM" pgsql_schema"。 源系统。

超级大咸鱼
2楼-- · 2020-08-15 21:25

嗨Pruthvi,

您提到的所有要点在这种情况下均不适用。 像您提到的SELECT一样,当我在此连接中使用的用户直接在远程数据库中执行时,返回有效结果。

我发现只有在将辅助凭据用于远程源时才会发生这种情况。 当我使用技术用户设置时,一切正常。

因此,第一种情况(使用辅助凭据)仍未解决。

关于尼尔斯,

宇峰Kouji
3楼-- · 2020-08-15 21:20

希望这会有所帮助:

https://blogs.sap.com/2016/06/30/step-by-step-setup-sdi-for- your-hcp-account-part-2/

有关角色,请参阅博客的第一部分:

SDI_USER

SDI_DP_AGENT( 技术用户)

一周热门 更多>