gpt4 book ai didi

Hudson Windows 服务从属启动导致 SmbException

转载 作者:行者123 更新时间:2023-12-02 16:50:17 25 4
gpt4 key购买 nike

我们刚刚获得了三个新的构建从属 Hudson ,运行 Windows XP x64。我们在部署到这些设备时遇到了以前从未见过的问题(我们已经有另外两台 XP32 机器)。

当我们第一次重新启动服务器时,或者刚刚重新启动Server服务后,hudson上的节点日志显示以下内容(为了保护无辜者更改了域名):

Connecting to beast.example.comCopying slave.jarThe parameter is incorrect.jcifs.smb.SmbException: The parameter is incorrect.at jcifs.smb.SmbTransport.checkStatus(SmbTransport.java:542)at jcifs.smb.SmbTransport.send(SmbTransport.java:644)at jcifs.smb.SmbSession.sessionSetup(SmbSession.java:371)at jcifs.smb.SmbSession.send(SmbSession.java:235)at jcifs.smb.SmbTree.treeConnect(SmbTree.java:161)at jcifs.smb.SmbFile.doConnect(SmbFile.java:858)at jcifs.smb.SmbFile.connect(SmbFile.java:901)at jcifs.smb.SmbFile.connect0(SmbFile.java:827)at jcifs.smb.SmbFile.open0(SmbFile.java:917)at jcifs.smb.SmbFile.open(SmbFile.java:951)at jcifs.smb.SmbFileOutputStream.(SmbFileOutputStream.java:142)at jcifs.smb.SmbFileOutputStream.(SmbFileOutputStream.java:97)at jcifs.smb.SmbFileOutputStream.(SmbFileOutputStream.java:67)at jcifs.smb.SmbFile.getOutputStream(SmbFile.java:2793)at hudson.os.windows.ManagedWindowsServiceLauncher.copySlaveJar(ManagedWindowsServiceLauncher.java:198)at hudson.os.windows.ManagedWindowsServiceLauncher.launch(ManagedWindowsServiceLauncher.java:152)at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:175)at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)at java.util.concurrent.FutureTask.run(FutureTask.java:123)at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:651)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:676)at java.lang.Thread.run(Thread.java:613)

在任何后续尝试“启动从属服务”时,我们都会得到:

Connecting to beast.example.comCopying slave.jar0xC0000205jcifs.smb.SmbException: 0xC0000205at jcifs.smb.SmbTransport.checkStatus(SmbTransport.java:542)at jcifs.smb.SmbTransport.send(SmbTransport.java:644)at jcifs.smb.SmbSession.send(SmbSession.java:242)at jcifs.smb.SmbTree.send(SmbTree.java:111)at jcifs.smb.SmbFile.send(SmbFile.java:729)at jcifs.smb.SmbFile.open0(SmbFile.java:934)at jcifs.smb.SmbFile.open(SmbFile.java:951)at jcifs.smb.SmbFileOutputStream.(SmbFileOutputStream.java:142)at jcifs.smb.SmbFileOutputStream.(SmbFileOutputStream.java:97)at jcifs.smb.SmbFileOutputStream.(SmbFileOutputStream.java:67)at jcifs.smb.SmbFile.getOutputStream(SmbFile.java:2793)at hudson.os.windows.ManagedWindowsServiceLauncher.copySlaveJar(ManagedWindowsServiceLauncher.java:198)at hudson.os.windows.ManagedWindowsServiceLauncher.launch(ManagedWindowsServiceLauncher.java:152)at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:175)at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)at java.util.concurrent.FutureTask.run(FutureTask.java:123)at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:651)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:676)at java.lang.Thread.run(Thread.java:613)

看来问题可能出在 samba 本身,而不是 Hudson。我们已经仔细检查了 C:\hudson 的组成员身份和目录权限,它们与其他两个从属服务器相同。

在实际运行 Tomcat+Hudson(但不执行构建)的 MacOSX 服务器上使用 smbclient,我一次尝试就得到了一个奇怪的响应:

smb: \hudson\> get hudson-slave.exeNT_STATUS_INSUFF_SERVER_RESOURCES opening remote file \hudson\hudson-slave.exe

谷歌搜索建议 IRPStackSize问题可能是罪魁祸首,但一次增加 5 个(最终达到 50 = 0x32)并重新启动服务器服务似乎没有帮助。

顺便说一句,启动 JNLP 客户端效果很好,尽管我们更希望将其作为服务。

<小时/>

顺便说一句,Hudson 版本是 1.323(仅落后一个,更新日志中没有任何内容看起来特别相关)。

最佳答案

看起来 JCIFS 可能对此有解决方案。来自同事:

"jcifs-1.3.10 released / Bugfix for SmbException: The parameter is incorrectposted by Mike, June 4, 2009This release fixes a bug that could sporadically trigger a "The parameter is incorrect" error." 

“刚刚查看了当前的 hudson 源代码,他们正在使用 jcifs-1.3.3,因此他们落后了并且没有此(以及其他几个)更新。”

我会考虑将其推送到上游错误跟踪器中,也许会尝试集成新版本并在本地重建。

<小时/>

更新 1:提交 issue tracker entry here

<小时/>

更新 2:我们已切换到 JNLP 并使用它来安装服务,该服务设置为自动启动。这已经工作一两天了,没有出现离线问题。将继续关注上游错误,以查看那里是否/何时发生任何事件。

关于Hudson Windows 服务从属启动导致 SmbException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1478837/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com