点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我们使用ASE已有20多年了(如果我没记错的话,从10.x开始)。 在所有这些时间内,我们无法在事务中创建#表(导致创建很多"正常"表,但用作临时表)。 另外,我还记得过去关于" ddl in tran"选项(和性能)的困惑,以及有关使用此选项的一些警告,但这都是很久以前的事...
但是现在我偶然遇到了"启用在转换中选择"选项。 我认识到ASE自早期以来已经发生了很大变化,因此很难说出哪些"故事"仍然正确...
我的基本问题是:我们是否可以仅启用"启用到转换中的选择"并开始使用此功能(因为这是我们多年以来一直想要的功能),而不会严重影响ASE的性能(例如: 锁定在tempdb上)?
PS:我们正在使用SAP ASE 16 SP03 PL03 ...
我已经测试了该选项,这就是我使它起作用的方式(我必须启用'ddl in tran'):
sp_dboption tempdb," ddl in tran",true sp_configure"启用tran中选择",1 使用mySampleDB 开始翻译 从中选择前5个*进入#t 回滚
Greetz
Pieter
看不到任何巨大的性能问题。
如果不迅速提交DDL事务,可能会对填充事务日志产生副作用。
Lon语句可以阻止 复制,例如 您有数百万行的"选择*进入#"
事务日志转储-如果受阈值控制-可能会更频繁地触发。
除此之外 这是正常交易。
HTH
Avinash
嗨Avinash,
我明白你在说什么。 #-tabel的创建主要对我们在事务中执行一些检查很有用,因此通常到#-表中的行很少。
但是:我昨天在我们的生产环境中启用了该行为,并且我们已经从中获得了第一个堆栈跟踪。 显然,在#表上的while循环中创建索引会导致堆栈跟踪。 当然,这是我们代码中的"错误",但是如果未启用" ddl in tran"选项,则ASE会给出一个错误,指出无法创建索引。 我将使用此堆栈的SAP支持创建一个"凭单"。
Greetz
Pieter
一周热门 更多>