问题标签 [parallel-execution]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
selenium - 由于场景大纲中未定义的步骤,黄瓜报告的状态显示为失败
我在jenkins生成的 Cucumber 报告中遇到了一个问题。即使通过,测试状态也会显示为失败。它最初以黄色(未定义的步骤)显示场景大纲,以下迭代正在通过。
我有一个包含 2 次迭代的场景大纲
生成的报告是 示例报告图像
有没有其他方法可以防止测试失败?有人可以帮助解决这个问题吗?
注意:它在顺序执行中运行良好,在实现并行浏览器之后,我遇到了这个问题
sql - PARALLEL (AUTO) Oracle 提示和 PARALLEL_MIN_TIME_THRESHOLD
Oracle 提示PARALLEL (AUTO)
似乎阻止了并行执行。以下是在 12c 开发服务器上,但我们在 19c 服务器上看到了类似的行为。 PARALLEL
产生并行执行,但PARALLEL (AUTO)
没有。为什么不?
启用 PDML。
以下是%parallel%
供参考的参数。
解释这个UPDATE
DML 表明我们确实得到了并行执行。
但是,当使用PARALLEL (AUTO)
提示时,我们不再接收并行执行。
只是为了确认它不是PARALLEL_DEGREE_POLICY
让我们把它改成不是MANUAL
。
结果相同。
即使我们从语句中删除 PDML 方面,SELECT
(Parallel Query - PQ) 也会出现令人惊讶的结果。
此非生产服务器上的活动非常有限。
这种行为PARALLEL (AUTO)
似乎与文档相矛盾(参考下文)。
Oracle SQL 数据库参考 | PARALLEL_DEGREE_POLICY
注意:如果在 SQL 语句级别使用 PARALLEL 提示,则无论 PARALLEL_DEGREE_POLICY 的值如何,都将启用自动并行度。
Oracle SQL 参考指南 | 评论 | 提示
此提示会覆盖 PARALLEL_DEGREE_POLICY 初始化参数的值。它适用于语句的 SELECT、INSERT、MERGE、UPDATE 和 DELETE 部分,以及表扫描部分。如果违反了任何并行限制,则忽略该提示。
12c
PARALLEL:语句始终并行运行,数据库计算并行度,可以为 2 或更大。
PARALLEL (AUTO):数据库计算并行度,可以为 1 或更大。如果计算出的并行度为 1,则语句串行运行。
PARALLEL (MANUAL):优化器被迫使用语句中对象的并行设置。
19c/21c
PARALLEL:该语句导致的并行度等于或大于计算的并行度,除非并行度对于最低成本计划不可行。当并行性不可行时,该语句将串行运行。
PARALLEL (AUTO):该语句导致的并行度等于或大于计算的并行度,除非并行度对于最低成本计划不可行。当并行性不可行时,该语句将串行运行。
PARALLEL (MANUAL):优化器被迫使用语句中对象的并行设置。
这里发生了什么?提前致谢。
c++ - 使用 std::thread 并加入并行性
我正在制作一个脚本,它遍历 fasta 文件的所有染色体并将其拆分为 10 bp 的片段,该函数称为 chrdata,我将这些片段保存到一个文件中。这种碎片可能发生在每个染色体上,与其他染色体完全分开,因此我正在尝试线程。
chrdata(faidx_t *seq_ref ,int chr_no,FILE *fp)
我的目标是希望加快这个过程。为了实现这一点,我尝试了使用 std::thread 函数的多线程。
我尝试过不同的东西。
- 首先,我尝试为第一个染色体创建一个线程,然后创建 thread.join(),然后为下一个染色体创建下一个线程,依此类推。
- 然后我尝试一次创建多个线程,就像使用 <thread> 在 C++ 中的同时线程中解释的那样, 这是下面的示例。
但是,据我了解并且我可以阅读,我总是需要使用 join 否则我最终会得到“在没有活动异常的情况下终止调用”。问题是示例 (1) 和 (2) 之间没有时间执行差异。
根据我的理解,尽管创建了带有线程对象的向量,但它们仍然必须加入并等待所有线程执行。这意味着这将是并发执行而不是并行执行。
所以我的问题是:任何人都可以给我建议下面的函数,我可能会改变以通过使用并行执行来加快执行速度?
还是在这种情况下我对加入和并发的理解是错误的?我不完全确定为什么我们不能跳过整个连接部分,如果所有线程都完成了,为什么我们不能只使用 detach()?
我没有攻击 main() 或 chrdata() 以使代码和问题更清晰。
pastebin.com/iY6u9CbH
python - 使用nose2(unitest/python/testsuite)并行执行测试套件测试用例
如何为 5 个单元测试测试类并行生成 5 个浏览器实例,每个测试类包含 4-5 个测试用例。我已经将这些类分组到一个测试套件中,并像下面这样调用nose2。但它按顺序启动浏览器实例。
鼻子2.cfg
更新-->
下面的代码没有使用默认的 testsuite 类,而是使用 multiprocessing 为 3 个测试类生成 3 个本地浏览器实例。
api - 空手道功能文件的 JUnit 5 运行器中的并行执行没有停止
空手道(版本 -0.9.4) - 有一个功能文件,其中使用了 4 个场景大纲,如果我单独运行此功能文件,那么它工作正常。但是当在并行运行中添加相同的文件时,并行执行不会停止。以下错误显示 错误屏幕截图
由于这个问题,没有生成黄瓜报告。
performance - 如何并行运行 ansible 角色
我正在使用最新版本的 ansible 和 python
我写了一个描述我面临的问题的测试用例。
我运行下面的 shell 脚本并传递三个应用程序名称,每个应用程序名称都是在同一节点上执行任务并休眠(等待)10 秒的 ansible 角色,这意味着它将执行超过(3X10)30 秒,如果执行不是并行的
下面是我用来运行我的 ansible-roles 剧本的 shell 脚本和角色的代码:
下面的输出显示执行不是并行的,需要 43 秒而不是 10+ 秒
这三个/tmp/par_<appname>.log
确实生成了。
我尝试&
在我的 shell 脚本中添加 ansible-playbook 命令,因此每个应用程序都是一个新的 ansible-playbook 任务,它并行运行但只生成一个/tmp/par_<appname>.log
而不是全部三个。此外,执行似乎需要与以前相同的时间。
输出&
更改:
我在这里阅读了有关 ansible 角色并行执行的内容如何在 Ansible 剧本中并行运行几个角色?然而,
您能否建议我如何让三个应用程序任务并行运行,这样我只需要大约 10 多秒?调整,解决方法也将受到赞赏。
如果此解决方案对我永远不起作用,请通过示例提出替代方法。
python - 测试用例的并行执行不适用于 pytest-html-reporter 报告
这是我使用 pytest 运行几个测试用例的简单命令: py.test -S www -m "now" -n=5 --html-report=./report/RegressionReport.html --self-contained-html
在这里, --html- report是插件pytest-html-reporter的命令行参数
在我开始使用此插件美化我的基本 pytest 报告后,我的并行执行似乎工作正常,但在这种情况下 output.json 仅显示最后一个实例的结果,报告还显示仅最后一个实例的不完整数据并行执行。
早些时候,使用pytest-html插件和--html命令行参数,并行执行工作正常。
有什么建议么??提前致谢。
postgresql - 将数据库更改为 postgres 时气流并行失败
我已经在本地安装了气流,并且正在更改执行程序以运行并行任务为此,我更改了
1- 数据库到 Postgres 13.3
2- 在配置文件中 sql_alchemy_conn = postgresql+psycopg2://postgres:postgres@localhost/postgres
3-执行者=本地执行者
我已经使用气流数据库检查检查了数据库并且没有错误 - > INFO - 连接成功。气流数据库初始化->初始化完成
我收到的错误,我根本不使用 SQLite
1- {dag_processing.py:515} 警告 - 因为我们在使用 SQLite 时不能使用超过 1 个线程(parsing_processes = 2)。所以我们将并行度设置为 1。
2- 我从气流网络界面收到此错误
那么我应该做任何其他改变吗?
junit5 - Junit 5 测试未并行运行
我创建了一个简单的程序来初始化 crome 和一个 SYSO 语句。我想并行运行 2 @Test。但它执行的总是 seq。它无法识别并行执行的原因是什么?
这是代码:
'''
这是资源文件夹下的“junit-platform.properties”
selenium - 错误:会话 ID 为空。调用 quit() 后使用 WebDriver?- 并行执行 - AfterMethod driver.quit/close
在我的代码下面找到
我知道这是因为 driver.quit()。所以我只使用了驱动程序。AfterMethod 中的 close()。还是失败了。我也没有使用静态。解决办法是什么。