小编Joo*_*imm的帖子

如何在构建恢复时在Jenkins管道中发送通知?

我希望在作业恢复时从我的Jenkins管道构建发送通知.当前构建成功并且最后一次构建错误(失败,中止等)时的含义.

我知道如何发送通知.我想我的问题归结为如何检查以前版本的状态,但我可能会弄错.

我试过"currentBuild.rawBuild.getPreviousBuild()?.getResult()",但得到了异常"org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException:脚本不允许使用方法org.jenkinsci.plugins.workflow.support. steps.build.RunWrapper getRawBuild".如果我关闭沙箱,它应该工作.沙箱可以吗?

notifications jenkins jenkins-pipeline

12
推荐指数
2
解决办法
9877
查看次数

为什么大数字在保存到Oracle DB时会更改值

在一个软件项目中,我们偶然发现了一个错误,我们从Java中插入了大量(17位数)到Oracle DB过程.数字改变了它的值有时+1或-1.有时保持不变.我们检查了oracle DB驱动程序调试日志,看到它打印了正确的数字.我们还尝试在每个请求之间重新启动Java应用程序服务器,以消除奇怪的缓存错误.仍然得到相同的结果.

任何想法为什么会这样?

这是代码:

// Datasource configuration
<New class="oracle.jdbc.pool.OracleDataSource">
    <Set name="DriverType">thin</Set>
    <Set name="URL">jdbc:oracle:thin:@xxxx</Set>
    <Set name="User">uuuu</Set>
    <Set name="Password">pppp</Set>
</New>

// JAVA
SimpleJdbcCall testMsg = new SimpleJdbcCall(dataSource).
    withSchemaName(schema).
    withCatalogName(catalog).
    withProcedureName("test_msg");

public void testMessage(Long n) {
  testMsg.execute(n, n, n.toString());
}

// PL_SQL
procedure test_msg(
    i           integer,
    n           number,
    v           varchar2
) is
    log_prfx log_pkg.t_log_prfx := 'test_msg: ';
begin
    g_log.log_debug(log_prfx||'i='||to_char(i));
    g_log.log_debug(log_prfx||'n='||to_char(n));
    g_log.log_debug(log_prfx||'v='||v);
end test_msg;
Run Code Online (Sandbox Code Playgroud)

现在打电话

testMessage(10000000000000005L);
testMessage(10000000000000007L);
testMessage(10000000000000009L);
Run Code Online (Sandbox Code Playgroud)

最终得到像日志

test_msg: i=10000000000000005
test_msg: n=10000000000000005
test_msg: v=10000000000000005


test_msg: i=10000000000000008
test_msg: n=10000000000000008
test_msg: v=10000000000000007

test_msg: i=10000000000000008 …
Run Code Online (Sandbox Code Playgroud)

java oracle plsql spring-jdbc ojdbc

5
推荐指数
1
解决办法
969
查看次数

如何在启用保管库锁定的情况下将对象从Amazon S3移动到Glacier?

我正在寻找一种在启用保管库锁定的情况下将Amazon S3对象移动到Glacier的解决方案(如此处所述https://aws.amazon.com/blogs/aws/glacier-vault-lock/)。如果可能的话,我想使用Amazon内置的工具(生命周期管理或其他工具)。

我找不到任何说明或选项来做到这一点。S3似乎只允许将对象移动到Glacier存储类。但这既不能提供数据完整性,也不能防御数据丢失。

我知道我可以用一个程序来做。它将下载S3对象,并将其通过各自的REST API移至Glacier。对于这个简单的任务,这种方法似乎太复杂了。

amazon-s3 data-integrity amazon-glacier

1
推荐指数
1
解决办法
1051
查看次数