On this page
3.4 Changelog
在本页面
3.4.24 Changelog
Security
SERVER-37135 TLSVersionCounts 需要跟踪和报告 TLS 1.3
SERVER-38945 SSL 性能下降
SERVER-43751重新计算压缩机 Management 器消息参数
Sharding
Replication
SERVER-37846如果提交了写入,仲裁员可以满足 writeConcern
包含_id 大于节点数的SERVER-40355 rs.config 将崩溃
SERVER-43879 OplogInterfaceLocal :: next 应该返回一个拥有的 BSON obj
Query
SERVER-39019 $ elemMatch $ ne 序列化不正确,不会往返
SERVER-43699查找$ mod 可导致 UB
SERVER-44050“哈希”索引键路径中的数组未正确拒绝
SERVER-44571升级后无法更新或删除 SERVER-44050 损坏方案中涉及的文档
构建和包装
SERVER-37772平台支持:添加社区和企业 RHEL 8 x64
SERVER-43359为 RHEL8 添加缺少的存储库配置
Internals
SERVER-29020升级 ASIO
SERVER-30269碰撞 ASIO 以捕获错误修复
SERVER-38002将 Pcre 升级到至少 8.42
SERVER-40669 install_compass 不应明确使用 python3
SERVER-43085使用 SHA-256(而不是 SHA-1)重新生成所有测试证书
SERVER-43151 value.cpp 上的聚合 assert 错误:1368
SERVER-44064对 MessageCompressorManager 参数执行显式转换
SERVER-44140使用没有 DSI 的 signal 处理
SERVER-44312在性能测试中指定常绿认证,以进行 signal 处理
SERVER-44611修复 v3.4 中的 evergreen.yml
SERVER-44651更新 signal 处理版本
SERVER-44993 ssl_count_protocols.js 不应在 3.4 的 OS X 上评估测试大多数协议
WT-4956处理对页面进行 40 亿次更新而不驱逐的情况
3.4.23 Changelog
Sharding
SERVER-36394 mongos 应该在 autosplit = false 或 splitvector 返回的分割点太少时重置块大小跟踪信息
Replication
SERVER-42055仅获取集合 IX 锁以写入 lastVote 文档
SERVER-42653编写 lastVote 文档时始终 waitUntilDurable
Query
SERVER-41829 findAndModify 忽略不是对象的过滤器表达式
SERVER-43074写出目录文档时,请勿使用全局变量对“ multikeyPath”信息进行编码
Storage
SERVER-42652解决重命名集合的问题
Operations
SERVER-42257添加新的 Shell 启动横幅
构建和包装
SERVER-42172将 Ubuntu 14.04 添加到 v3.4
SERVER-42603最近的服务文件更改可能会导致循环依赖性
Internals
SERVER-39928每晚停止在驱动程序中使用 Python 2.6 测试 PyMongo
SERVER-42343 WiredTigerLAS.wt 在滞后节点处于维护模式时增长
3.4.22 Changelog
Security
SERVER-40393在 ASIO 中禁用 SSL_MODE_RELEASE_BUFFERS
SERVER-41069能够通过 x509extensions 禁用授权
Replication
SERVER-40336 ReplicationCoordinatorImpl :: __ random 对于同时启动副本集成员而言并不健壮
SERVER-41036设置 ReadWriteAbility :: _ canAcceptNonLocalWrites AtomicWord<bool>以防止读取被破坏。
Query
SERVER-41863使用 sleep 命令在返回之前检查服务器时钟是否已提前
Storage
SERVER-17010减少基于文件的排序器中文件句柄的使用
构建和包装
SERVER-36043 mongod 的 systemd 单位在多用户目标之前启动
SERVER-40242更新供应商工具的横幅包含
SERVER-40563我们的初始化脚本检查/ proc/[pid]/stat 应该验证(${})是进程的命令名。
如果使用错误的 Python 解释器调用SERVER-41424 scons,应尽早失败
SERVER-41443更新企业许可证
SERVER-42089平台支持:从 3.4 和 3.6 删除 Enterprise RHEL 6.7 zSeries
SERVER-42172将 Ubuntu 14.04 添加到 v3.4
SERVER-42233凸显 Windows 软件包的依赖性
Internals
SERVER-20983为 resmoke.py 添加 requirements.txt
SERVER-21538选择时钟源以在启动时动态读取当前时间
SERVER-28421实现 ClockSource :: waitForConditionUntil()
SERVER-37984升级 yaml-cpp> = 0.6.0
SERVER-38098 MongoDB 的 yaml-cpp 被最新的 MSVC 拒绝
SERVER-38303暂时处理由于未启用 ipv6 的 s390x 计算机导致的 ipv6 故障
SERVER-38984为用户附加 ID
SERVER-39642范围连接未返回到池时递减 Export 计数器
SERVER-40923从“运行 jstestfuzz”常绿功能中删除 npm 测试命令
SERVER-40924将 Evergreen 任务添加到健全性检查模糊器可以解析 JavaScript 测试
SERVER-41148 FTDC 正在调用 boost :: filesystem 而不传递 error_code 参数
SERVER-41401 patch_files.txt 不能区分企业文件和社区文件
SERVER-41546 SysV 初始化脚本应验证 PIDfile 存在而不是失败
SERVER-41680将${branch_name}进行常绿扩展以调用模糊器
SERVER-41789 sys-perf:在 bootstrap.yml 配置文件中使用 bootstrap.overrides
SERVER-41967将符号链接/数据链接到 Z 而不是 C
3.4.21 Changelog
Security
SERVER-40393在 ASIO 中禁用 SSL_MODE_RELEASE_BUFFERS
Replication
SERVER-40628在 replsetprio1.js 设置下初始同步可能会失败
Aggregation
SERVER-39487 NumberDecimal 的聚合运算符$ sqrt 输出与$ exp 相同
Storage
SERVER-41213独特的后台索引构建可能会产生不一致的密钥
Operations
SERVER-39820将 Client 端 IP 地址添加到成功的身份验证日志消息中
SERVER-40259包含有关 ASIO 和变体的第三方通知
SERVER-40866使用 JSON.stringify()将字符串序列化为 tojson()
构建和包装
SERVER-37765平台支持:删除 Ubuntu 14.04
SERVER-37774平台支持:删除企业 Ubuntu 16.04 PPCLE
SERVER-40491更新 Debian 8 映像以进行软件包测试
Internals
SERVER-20983为 resmoke.py 添加 requirements.txt
内存变体中 ppc64le 上的SERVER-36750黑名单 memory.js
SERVER-39056进一步完善 readWriteAnyDatabase
SERVER-40165使用精确的时钟生成 wtimeout 截止日期
SERVER-40514 BufferedHandler.close()和 BufferedHandler.flush()之间的竞争导致 resmoke.py 与–log = buildlogger 挂起
SERVER-40922添加 npm install 命令以“运行 jstestfuzz”常绿功能
SERVER-41088将“常绿”订单字段传播给 Cedar 以获取系统性能
WT-4615在返回备份光标之前同步备份文件
3.4.20 Changelog
Sharding
SERVER-36901 sh.status()“上次报告的错误:”实际上是第 5 条最新错误消息
SERVER-39030 splitVector 记录的错误信息
Replication
SERVER-28053关闭 rollbackHangBeforeStart 故障点时允许网络错误
SERVER-39758 double_rollback.js 应该可靠地 await 节点 0 完成回滚
Query
SERVER-26463将 ttl_capped.js 超时从 5 秒增加到 60 秒
SERVER-38793用于归类的不可修复的功能跟踪器未为 createCollection 设置
Aggregation
SERVER-39166 $ graphLookup 应该强制管道在分片群集中拆分
Storage
SERVER-39723更改 listIndexes 命令行为以显示正在进行的索引构建
Tools
TOOLS-2030 mongodump 不会转储 system.js 集合
TOOLS-2109使用 Go 1.11 构建工具
Internals
SERVER-38954在预计达到时限的 max_time_ms.js 中增加测试用例的查询执行时间
SERVER-39058与 Client 端同步 AuthorizationSession 中的用户集修改
SERVER-39331从 network_interface_asio_integration_test 中删除 StressTest
SERVER-39746系统性能:在 runtime.yml 中编写项目
TOOLS-1906忽略 mongorestore 错误“ x509 证书例程:X509_STORE_add_cert:证书已在哈希表中”
TOOLS-2158 mongodump 在 Windows 上失败,并显示“打开系统 CA 存储错误:拒绝访问”。
TOOLS-2167添加用于在 Windows 上构建的 CGO 标志
TOOLS-2168添加用于在 MacOS 上构建的 CGO 标志
TOOLS-2210使用启用了地址空间布局随机(ASLR)标志的工具进行构建
3.4.19 Changelog
Sharding
SERVER-28716设置后调用 fsync,然后在 jstests/sharding/stats.js 中调用 collStats/dbStats
SERVER-30768如果使用的是 ExceededTimeLimit,则使用 maxTimeMS 进行的主查询会导致临时分片写入不可用
SERVER-32568 migration_sets_fromMigrate_flag.js 测试与分片连续降压套件不兼容
SERVER-37496进程为多线程后,平衡器不应注册关闭任务
SERVER-37616为测距仪实现可调整的批量大小
SERVER-37902 recoverying_slaveok.js 应该 assert 所有使成功的写入
SERVER-37932删除 coll_epoch_test1.js 的错误部分,该部分尝试测试不起作用的内容,但是由于测试中的错误,测试通过了
SERVER-38062将 assert.commandWorked()添加到 read_pref_cmd.js 中的命令
Replication
SERVER-22766 WiredTiger 节点的动态操作日志大小
SERVER-35608来自 lastAppliedOptime 的该术语永远不会大于我们当前的术语
Query
SERVER-13946考虑将跳过阶段置于获取阶段之下
SERVER-35455 QueryPlannerAccess 应该通过 unique_ptr 而不是原始指针保存拥有的指针
SERVER-37132使用正则表达式否定$ in 可能会从缓存中错误地进行计划,从而导致查询结果丢失
SERVER-38070聚合表达式中的无限循环
SERVER-38601为规划期间的内存泄漏添加回归测试
Aggregation
SERVER-37182引用整个对象与$ arrayToObject 之后的该对象的字段时的值不同
SERVER-37750优化的$ sample 阶段无法产生
Storage
SERVER-30151调整 oplog 大小的规格
SERVER-36968在检查 AuthZN 索引存在之前重建中断的索引
SERVER-37749 replSetResizeOplog 命令不验证参数
SERVER-38434 queryableBackupMode 和 wiredTigerEngineConfigString 标志不兼容
SERVER-38501将 3.4 的 replSetResizeOplog 命令换为新的 ActionType
Operations
SERVER-33469使 syslog 日志行与 mongod 日志行一致
构建和包装
SERVER-38726添加稳定的工具链变量文件
Tools
TOOLS-1709使用-ldflags 设置构建版本和 git 修订版
TOOLS-2149在 Evergreen 外部配置构建
Internals
SERVER-18985 setParameter 应该记录在 0 级
SERVER-23818在发送给 Logkeeper 的元数据中包含 Evergreen 任务 ID
SERVER-36250添加对可选记录特定的协商 TLS 版本的支持
SERVER-37120关闭 3.4 和 3.6 分支的 linux-replSet-initialsync-logkeeper 构建版本
SERVER-37647验证钩子将 FCV 设置为 3.4,无论当前版本是什么
SERVER-37913 coll_epoch_test1.js 在删除集合后不 await 配置服务器复制。
TOOLS-1566对于 Linux 64 构建,不应包含“ ssl”标记
TOOLS-1742 util 和 testutil 之间的导入周期
TOOLS-1996允许从普通的 GOPATH 内部构建工具
TOOLS-2155在 Evergreen 和 Server Evergreen 中通过 ldflags 设置版本/ git-commit
TOOLS-2157更新服务器供应商
3.4.18 Changelog
Security
SERVER-35418允许分别为传入和传出连接指定 CA
Sharding
SERVER-26915 jumbo1.js 自动平衡在降压套件中太慢
Replication
SERVER-25175 listIndexes 不应包含进行中的背景索引
SERVER-35200稳定状态复制期间加快 OplogFetcher 中的故障检测
SERVER-36978 TaskRunner 必须确保 Client 端在运行任务之前已初始化为线程
SERVER-37010防止 initial_sync4.js 和 initial_sync_rename_collection * .js 中发生意外选举
SERVER-37152增加预期在 tags.js 中成功写入的写入关注超时
Query
SERVER-28251修复 index_killop.js 中的 match 条件
SERVER-36435在 awaitdata_getmore_cmd.js 中增加 maxTimeMS 超时
SERVER-36944 applyOps 在创建 v:1 索引时不允许未知的字段名称
SERVER-37058使用数组中的数字字段名称更新可能导致验证失败
Storage
SERVER-37333 [3.4] applyOps 无法验证 system.indexes 插入的后台索引规范
Operations
SERVER-34864字符串值字段不应参与 ftdc 中的模式更改检测
Tools
TOOLS-2102 Mongorestore 不检查解码 oplog.bson 文件的错误
Internals
SERVER-28095清除 dmesg 缓冲区不应在 evergreen.yml 中出错
SERVER-36718验证钩子应在验证索引一致性之前升级
SERVER-36747将少量时间延迟添加到“ jstests/ssl/ssl_client_certificate_warning_suppression.js”
SERVER-36756当模糊测试器的自检失败时,记录 10gen/jstestfuzz 存储库的 githash
SERVER-36919添加服务器 setParameter tlsWithholdClientCertificate(布尔)
SERVER-36987 ChunkVersion :: minorVersion 截断为 16 位
SERVER-37041更新旧分支上的评估黑名单,以解决分支之间测试的差异
SERVER-37064将“ mongod_flags”包装到多行以提高可读性
SERVER-37127更新 sys-perf 的基准比较
SERVER-37130将 TLS 版本添加到 mongos
SERVER-37367 Notification :: waitFor 在 3.4 中不可中断
SERVER-37393修复 ReplicaSetMonitorManager 中的析构函数竞争
SERVER-37424 Sys-perf:将 v4.0 分支批处理时间更改为每周一次
SERVER-37425长寿测试–将批处理时间增加到每年一次
SERVER-37437 mongo 长寿测试失败
SERVER-37647验证钩子将 FCV 设置为 3.4,无论当前版本是什么
3.4.17 Changelog
Security
SERVER-33857由于与 Command :: redactForLogging()混淆而缺少日志编辑
Sharding
SERVER-27599分片测试不应依赖于查询 config.shards 集合时返回的条目 Sequences
SERVER-27725迁移块时使用批处理插入
SERVER-29702在 shard_insert_getlasterror_w2.js 中的 addShard 周围添加 assert.commandWorked()
SERVER-33237优化范围删除器的速度
SERVER-34897引入参数以控制 MongoS 是否应自动重试失败的查找命令
SERVER-36132提交成功后不变,块迁移实际上反映在元数据中
SERVER-36232提交块迁移提交后刷新可能看不到已提交的元数据
Replication
SERVER-32148将 NamespaceNotFound 设为 emptyCapped 和 convertToCapped 可接受的错误
SERVER-32647在 Jepsen 测试中获得种子节点后,重试连接到副本集
SERVER-34414使用 buildsIndexes:false 节点创建角色时遇到提示
SERVER-34682老小学应投票赞成,并在卸任后学习更高的学期后存储最后的投票
SERVER-35962 buildindexes_false_with_system_indexes.js 重新启动节点,应标记为[requires_persistence]
Query
SERVER-26387将 noPassthrough/indexbg2.js 替换为使用故障点的测试
SERVER-34846如果排序规则不包含在匹配或排序中,则带有排序规则字段的覆盖索引返回错误结果
JavaScript
SERVER-35986停止在较旧的分支上的并行套件中运行 eval 命令
Storage
SERVER-34602 convertToCapped 收集放置不会在 3.4 上提交 WUOW
Operations
SERVER-34141分片中的 appName 不一致
SERVER-34160 MongoClient 端终止时运行缓冲命令。
SERVER-36010将 Windows 堆栈跟踪的日志消息更改为使用 error()或 strict()而不是 log()
SERVER-36479记录慢查询时,日志编辑不显示 planSummary
构建和包装
SERVER-36884在稳定分支上更新策展人版本
Internals
SERVER-29008定义 TestData.numTestClients 属性,以便模糊器知道存在并发 Client 端
SERVER-31434至少给 mongo :: Value 指针对齐
SERVER-34558将 SSL_version 添加到 Client 端元数据日志记录
SERVER-34614 parallelTester 应该为每个新测试使用不同的连接
SERVER-34735从 X.509 证书中提取结构化名称
SERVER-34793在失败的任务完成时将呼叫添加到 BF 建议服务器
SERVER-35100钩子动态测试失败时,请勿记录 Python 堆栈跟踪
SERVER-35668避免将并发测试移至 arm64 上的小型实例
SERVER-35858呼叫 BF 建议服务出错
SERVER-35861删除对 perf.yml 中的 dashboard_gen.py 的调用
SERVER-36001将 require_document_locking 标记添加到 noPassthrough/indexbg2.js
SERVER-36111 job.py 中的错误与 3.4 中存档数据文件的功能有关
SERVER-36149修复 setFCV 虚拟名称空间的特权
SERVER-36462将 Map 集用户添加到 runtime_secret.yml
TOOLS-1991使用 Go 1.10.1 构建工具
TOOLS-2066 MongoDB 3.4 供应的 github.com/10gen/openssl 没有定义 FIPS 函数
WT-3637修复退出拆分页面后的堆使用。
3.4.16 Changelog
Security
SERVER-35322 external_auth 测试应在每个测试中使用唯一的 kerberos 凭据缓存
Sharding
SERVER-25746将 advisoryHostFQDNs 数据存储在 config.mongos 集合中
SERVER-30050 top_chunk_autosplit.js 在更新平衡器设置时应使用 w:大多数
SERVER-34644禁用 DollarPrefixedFieldName 检查 moveChunk/mergeChunks
Replication
SERVER-5461将 syncSourceHost 字段添加到 replSetGetStatus 输出
SERVER-30947 checkOplogs 函数应在失败时转储更多 oplog 条目
SERVER-31165在 checkReplOplogs 中打印不匹配的操作日志条目
SERVER-31995记录的初始同步统计信息可能会超过 16mb,这会导致 fassert
SERVER-32935改进 SyncTail :: oplogApplication()中的异常处理
SERVER-34549测试指的是 ReplSetTest.kDefaultTimeoutMS(未定义)
SERVER-34661如果投票请求响应有错误,请尽早返回
SERVER-34758 replSetGetStatus 可以与 initialSyncer 死锁
SERVER-35437在 multi_rs.js 中执行降压命令后 await 二级状态
Query
SERVER-35693由于 O(n ^ 2)boost :: flat_set 构造函数,$ in 的解析需要二次时间
Storage
SERVER-34863在 3.2、3.4 和 3.6 分支上禁用 LSM 测试
Operations
SERVER-27230当副本集不健康时,诊断数据压缩不佳
SERVER-33546将数字同步字段添加到 replSetGetStatus 成员数组
SERVER-34159修复 migration_destination_manager 日志记录
构建和包装
SERVER-32999平台支持:删除 Debian 7
SERVER-33395 PPC64 的小字节序优化在较新的 gcc 上已被破坏
SERVER-35210策展人发布的版本应从项目扩展中填充
Internals
SERVER-26884在测试失败时支持在 Evergreen 中归档数据文件
SERVER-27410完成在 Enterprise RHEL 6.2 上进行编译所需的 lint 任务
SERVER-29301将 MozJS 升级到 ESR 45.9.0
SERVER-29359在 Export 服务器连接上启用 SO_KEEPALIVE
SERVER-30290在 ftdc_setdirectory.js 中使用唯一路径
SERVER-30557使 max_time_ms.js 更强大
SERVER-31400在 ftdc 中记录 Linux netstatMetrics
SERVER-31562在每个失败的测试结束时转储副本集操作日志
SERVER-32688 FSM 复制套件应给次要成员零票
SERVER-32762将文件上传到 S3 的模块
SERVER-32763创建 archive.json 并关联到 evergreen.yml 中的任务
SERVER-32852捕获有关并发套件故障的 FTDC 数据
SERVER-32898为重排模块 archival.py 创建单元测试
SERVER-33009 evergreen.yml 中的 AWS 凭证配置文件
SERVER-33144在测试失败时支持在 Evergreen 中归档数据文件-Windows
SERVER-33193为特定任务和钩子启用测试失败存档
SERVER-33346固定 boto3 的特定版本以在 etc/evergreen.yml 脚本中使用
SERVER-33512将 PeriodicKillSecondaries 钩子添加到存档列表
SERVER-34371当测试装置无法删除数据文件时,请不要忽略错误
SERVER-34374 resmoke.py 使用字节字符串表示路径名,导致在 Windows 上无提示地无法清除 dbpath
SERVER-34380 system_perf.yml:删除 compile_proxy 任务
SERVER-34540从 dbtests 中删除 sleeptest
SERVER-34624从 3.4 中删除 C 14 构建器
SERVER-34742停止在 OS X 上运行 ssl_cert_password.js
SERVER-34823在 TransportLayerLegacy 中线程名称和连接号未同步
SERVER-34835修复 shard_does_not_hang_on_bad_config_server.js 以接受 HostUnreachable 或 ExceededTimeLimit
SERVER-34851不允许对找到的最小值和最大值相同的索引进行选择
SERVER-34865删除临时文件后,测试归档失败
SERVER-34888 SSLPeerInfo 的跟踪状态
SERVER-34950使用新的 sys-perf 基准 3.4.14-基准
SERVER-35051 Resmoke 应该在关闭分片群集之前先停止平衡器
SERVER-35071将 MMAPv1 任务拆分为 sys-perf 中的单独变体
SERVER-35108在 system_perf.yml 中启用 signal 处理
SERVER-35155使用显式 X509Client 端名称修复 jstests/ssl/x509_invalid.js
SERVER-35207不要在 system_perf.yml 中使用 json.get_history
SERVER-35264在 sys-perf-3.4 上//编译失败// SERVER-34380
SERVER-35610优化 LDAP 选项解析
WT-3557使测试/格式忽略未知关键字
WT-3710修复并发页面拆分之间的竞争条件
WT-3994增强 WiredTiger Jenkins 对旧分支的拉取请求测试器
WT-4032个父页面可以在拆分时逐出。
WT-4037 WT_REF 结构在仍在使用时被释放
WT-4045 EIO 失败后不要重试 fsync 调用
3.4.15 Changelog
Security
SERVER-31893明确定义同步 LDAP 调用的超时
SERVER-34193使用 OpenSSL 更新限制递归定义 ASN.1 类型
SERVER-34477覆盖范围分析缺陷 103475:无效的迭代器比较
Sharding
SERVER-16802平衡器块移动的 Sequences 取决于 config.collections 的 Sequences
SERVER-22553 mongos_shard_failure_tolerance.js 不应该依赖碎片 ID 的 Sequences
SERVER-27941进入关键部分时,请删除 shardVersion 检查。
SERVER-28670将分片元数据刷新 Metrics 部分添加到 serverStatus
SERVER-28981分块平衡器在移动块时更喜欢按特定 Sequences 分片
SERVER-32885供体上的重叠块克隆应用程序,可从接收者获取文件
SERVER-34508防止 Migration Destination Manager 中的竞争条件吞下异常
SERVER-34571关机时 Invariant 在 MigrationChunkClonerSourceLegacy 的析构函数中失败
Replication
SERVER-29949 InitialSyncerResetsOptimesOnNewAttempt 单元测试应在启动初始同步器之前设置 optime
SERVER-33026 SyncSourceFeedback 请求没有超时
Storage
SERVER-23935在可查询的备份模式下禁用 oplog 采样
SERVER-32453 WTKVEngine :: getAllIdents 错误处理了光标->下一个返回代码。
SERVER-33854修复 applyOps 字段处理
WiredTiger
- SERVER-20056如果 wiredTigerCacheSizeGB 大于 RAM 的 80%,则记录启动警告
Operations
SERVER-12644将有关 noprealloc 损害性能的 Comments 移到启动警告中
SERVER-28369为 mongoldap 提供“调试”模式
构建和包装
SERVER-21317对于没有 version.json 和没有 git repo 的构建,可以更好地回退
SERVER-25691展开单元测试编译并运行其自己的任务
SERVER-27483避免从 Evergreen 的 C 单元测试中剥离调试符号
SERVER-31535平台支持:删除 Ubuntu 12.04 版本
SERVER-31809在 macOS 上开始使用工具链 python
SERVER-32923平台支持:删除 SLES11 版本
SERVER-34149将 zlib 升级到最新版本
SERVER-34250 Evergreen 中的 Update Tools 构建器以匹配上游
Tools
TOOLS-17 mongodump –oplog 在备份 oplog 之前应记录结束 oplog 条目
TOOLS-1706 mongoreplay 无法安全地在一个内核上终止
TOOLS-1779停止在所有分支机构的 solaris 上构建工具
TOOLS-1780使用 Go 1.8.x 构建工具
TOOLS-1948在带有 openssl 0.9.x 的平台上使用 Go-native TLS 拨号程序
TOOLS-1968反向移植-需要更新 spacemonkeygo/openssl 分支以支持较新的 OpenSSL 库
Internals
SERVER-21630将 resmoke 的 CheckReplDBHash 支持扩展到配置服务器和分片副本集
SERVER-24480验证钩子应在 CheckReplDBHash 之后运行
SERVER-24759在配置服务器上运行 resmoke.py 集合验证
SERVER-25771 valgrind 失败,出现 boost :: math :: erfc_inv<long double>(长双精度,长双精度):溢出错误
SERVER-27351删除的文件会导致长绒失败
SERVER-27529 scons msi 目标无法解决缺少的依赖关系
SERVER-27643堆栈大小 ulimit 为无限时,堆栈定位器可以返回无效的堆栈大小
SERVER-28989避免在 ReplSetTest.prototype.checkReplicaSet()中删除虚拟数据库
SERVER-30857当我尝试启动./mongo 实例时,它立即崩溃,即使它从 127.0.0.1:54008#1 接受的另一方面显示连接(现在已打开 1 个连接)
SERVER-30900从 ReplSetTest.checkReplicaSet()中删除 collMod writeConcern 参数
SERVER-31128 run_validate_collections 钩子不检查次要钩子
SERVER-31441使 run_validate_collections.js 并行验证副本集中的所有节点
SERVER-31468 replSets/startParallelShell.js 应 await 其并行 Shell 退出
SERVER-33068 run_check_repl_dbhash.js 钩子退出而未在副本集上实际运行 dbhash
SERVER-33329服务器和命令行 Management 程序不发出 TLS“ protocol_version”警报消息
SERVER-33398添加新的更细粒度的 sys-perf 任务
SERVER-33484代码覆盖范围无法区分名称相同的文件
SERVER-33670在 system_perf.yml 中使用-ssl 编译标志构建 mongo 二进制文件
SERVER-33734改善 jsTestLog 的可过滤性
SERVER-33805将在 Evergreen 中运行的 Jepsen 任务更改为使用 mongobridge
SERVER-33843 PeriodicKillSecondaries 钩子可以在辅助节点仍在应用操作时运行验证
SERVER-33848更新 sys-perf 和 Performance 项目的编译标志
SERVER-33935 utils_auth.js 应该支持连接到运行 SSL 的集群
SERVER-33970 mongo-perf 的新基准
SERVER-34116 resmoke.py 静默未在 3.4 分支上运行非通过测试
SERVER-34140删除常青配置中针对单个任务的多个发行版规范
SERVER-34213 testshard1.js 应该使用_id 为[0,nItems -1]而不是[1,nItems]
SERVER-34237公开表示 Shell 禁用 TLS 1.0
SERVER-34605更改 Jepsen 任务以在 Evergreen 的 ubuntu1604-build 发行版上运行
SERVER-34667 data_consistency_checks.js 错误地认为 config.mongos 集合始终存在
TOOLS-1665 Mongotools 可能永远无法连接
TOOLS-1704更新 mongo-tools 项目以使用 macos-1012 发行版而不是 osx-1010
TOOLS-1941工具质量检查经常超时,尤其是在服务器最新消息上
TOOLS-1978工具无法通过 eslint 测试
TOOLS-2003从 Evergreen 版本中删除 SUSE11
TOOLS-2008 v3.4-master 分支上的测试失败
WT-3972允许同时在数据源上打开超过 64K 的游标
WT-3975 rwlock 更改后 arg 格式不匹配
WT-3994增强 WiredTiger Jenkins 对旧分支的拉取请求测试器
WT-4032个父页面可以在拆分时逐出。
3.4.14 Changelog
Security
SERVER-32933在无法访问 LDAP 服务器时允许 mongod 启动
Sharding
SERVER-29812 RangeDeleter 不必要 await“多数”写入问题
SERVER-31979块迁移统计信息未记录在 moveChunk.commit 更改日志条目中
SERVER-32886块迁移期间不必要的睡眠
SERVER-33228从 3.4 代码库中删除半实现和未使用的 CollectionRangeDeleter
Replication
SERVER-28151身份验证数据库应在初始同步期间首先同步
SERVER-31399 repl.apply.batches.totalMillis 不记录申请批处理所花费的时间
SERVER-31671如果在写完我的最后一票后任期发生变化,则取消竞选
SERVER-33448放宽 apply_batches_totalMillis.js 中的时间差异要求
Query
SERVER-31161通过 applyOps 命令创建的索引不应继承集合默认排序规则
SERVER-33092 elemMatchProjection.js 错误地假定 shell 生成单调递增的_id 值
Storage
SERVER-28594非原子 applyOps 应该记录每个单独的 op
SERVER-32533在用 WT 截断 oplog 时,请勿使用开始键
SERVER-33122添加选项以禁用游标缓存以加速放置数据库和收集放置
SERVER-33233不要因为门票用完而拖延 ftdc
Operations
SERVER-30114监视 tcmalloc 自旋锁花费的累积时间
SERVER-33227使用脚本中的 connect 方法将作为副作用更新全局数据库。
构建和包装
SERVER-33406减少 s390x 编译和 compile_all 构建的并发性,以避免 OOM 失败
Internals
SERVER-23420在 parse_number_test.cpp 中删除对 GNU 扩展的使用
SERVER-28495 MongoS 的 FTDC
SERVER-29938重构 FTDC
SERVER-30158 FTDC 在 Mongo 斯 State 开始得太早
SERVER-30850 startParallelShell 不能在以副本集连接字符串开头的 shell 中使用
SERVER-31222 JSFiles 源成员不应作为参考
SERVER-32241 applyOps 报告成功,即使嵌套的 applyOps 失败也是如此。
SERVER-32522 set_read_and_write_concerns.js 将 mapReduce“ out”字段视为聚合的$ out 阶段
SERVER-32583 Sys-perf 更新引导程序变量以使用正确的 ConfigDict 名称
SERVER-32691为 w =“ majority”创建直通,并设置了 2 节点副本以解决丢失的测试覆盖率
SERVER-33142在 system_perf.yml 中尝试禁用集群重用
SERVER-33147限制-j/num_jobs_available 用于高核心 ARM CI 服务器
SERVER-33236更新 perf.yml 以使用 git clone 的 ssh 形式
SERVER-33572提供有界的,可中断的,线程安全的生产者使用者队列
在 ReplSetTest 中连接到现有群集时进行SERVER-33751身份验证
SERVER-33760将锁回退到 3.4
WT-3245避免在 Util 线程遇到错误时挂起关机
WT-3904重新考虑日志服务器线程中的错误路径
WT-3938通过许多表和会话减少内存使用量
WT-3946使用 NULL 开始游标截断段错误
WT-3962 WiredTiger 乌 turtle 文件“ MoveFileExW:访问被拒绝。”错误。
3.4.13 Changelog
Operations
SERVER-33238防止 WiredTiger 读取的票证数量变为负数
Internals
SERVER-32664 Sys-perf 启用较低优先级的运行基准
3.4.12 Changelog
Sharding
SERVER-32924标记 skip_sharding_configuration_checks 使用 require_persistence 标记进行测试
Query
SERVER-33089无法启动可查询 mongod,因为它无法重新生成 admin.system.users 的索引
Storage
SERVER-31462 convertToCapped namedCollection 可能导致段错误
Operations
SERVER-31437修复 mongo 主机/数据库连接字符串的解析
SERVER-32875不要因为门票用完而拖延 ftdc
构建和包装
SERVER-32932测试 SLES 12 软件包时,请确保存在所需的存储库
Internals
SERVER-28396 resmoke.py 的 LogkeeperClient 端应通过分割 POST 请求来遵守大小限制
SERVER-32243添加一个选项,以使 validate 钩子跳过某些集合。
SERVER-32527更新程序包测试以使用新的 BUILD2 VPC
SERVER-32740在 system_perf.yml 中设置 bootstrap.ycsb_dir 和 bootstrap.workloads_dir
SERVER-32772 Evergreen 中的 dbtest 任务应写入任务目录
SERVER-32891 mongodb_setup 和工作负载_setup 调用的系统性能更改 Sequences
SERVER-32896在 system_perf.yml 中上传 dsi-artifacts.yml
SERVER-32931 v3.4 上的 burn_in_tests 发生系统故障(未更改测试)
3.4.11 Changelog
Security
SERVER-28662不要将 NULL baseDN 传递给 ldap_search
SERVER-31625使用 LDAP 服务器查询组时,必须转义\ {}的内容
SERVER-32086默认情况下禁止 LDAP 用户缓存无效日志消息
Sharding
SERVER-19919超过 250000 个文档但块大小不到一半的块将被标记为巨型
SERVER-29293接收方分片无法在降级时中止迁移
SERVER-29397将标记插入 config.tags 时,配置服务器上发生不变故障
SERVER-29423分片平衡器可以计划在同一源或目标位置进行多个迁移
SERVER-31982 Shard 不会以多数 writeConcern 调用配置提交块迁移命令,也不会检查 writeConcern 错误。
SERVER-32569介绍允许配置服务器和分片副本集以非集群模式启动的统一方法
Replication
SERVER-19605 Oplog 超时应该是可配置的
SERVER-27067某些命令不 await 无操作写入的关注
SERVER-28486 backup_restore.js 在获取当前的主数据库之前应 await 所有辅助数据库上的 FSM 和 CRUD 操作完成
SERVER-29090节点应提供有关为何拒绝投票的更多信息
SERVER-29649添加启动警告,当 replset 节点以–nojournal 运行但尚未将 writeConcernMajorityJournalDefault 设置为 false 时
SERVER-29937确保活动超时不容错过
SERVER-30143在 clean_shutdown_oplog_state.js 中提高 oplog 的大小
SERVER-30648我们 awaitForLock 之后设置 GlobalLockAcquisitionTracker
SERVER-30715在 logRotate 上打印副本集配置
SERVER-31262 _rbidCommandHandle 的存储可以与 SyncSourceResolver 的破坏竞争
SERVER-31587 ReplBatcher 具有长时间运行的 OperationContext
SERVER-31589主节点的 SyncSourceFeedback 仅在角色更改时续订 OperationContext。
SERVER-32030 SyncTail :: oplogApplication 使用长时间运行的 OperationContext(3.2/3.4)
Query
SERVER-21011针对复合 2d /文本索引的某些查询未正确覆盖,返回错误结果
SERVER-29270对首次 Importing 的操作日志查询不应使用阻塞排序
SERVER-32046某些 NumberDecimals 的数组可以触发不变失败
Write Operations
SERVER-31531功能兼容版本的写入必须检查 writeErrors
SERVER-32048使用数字路径组件进行更新可能会导致无法创建索引条目
Aggregation
SERVER-30009 MapReduce 失败:缺少)
SERVER-30449 ProjectionSpecValidator 的投影字段数为 O(N ** 2)
SERVER-31624将 3.2 升级到 3.4,$ geoNear 聚合失败,出现 featureCompatibilityVersion 3.4 排序规则错误
Storage
SERVER-30406重命名 system.views 不会正确使视图目录无效
SERVER-31101由于长时间运行 OperationContext,在删除收集后未删除 WT 表
SERVER-31149启用恢复进度消息
SERVER-31215在 Linux 上为 WiredTiger 启用 pthread cond 单调
SERVER-31469 WiredTiger 可查询的还原引擎不会在 Windows 上导出初始化功能符号
SERVER-31590 WT yieldAndAwaitOplogDeletionRequest 保留了 OperationContext,同时阻止了不频繁的触发
SERVER-31930 EphemeralForTest 不会在回滚时对有上限的集合中的记录取消索引。
SERVER-32001为部分唯一索引中的键取消索引可能会导致服务器崩溃
SERVER-32242修复 CompatibleFirstStress 锁 Management 器测试中的 match
Operations
SERVER-28072在复制集上使用“ mongo”运行脚本失败
SERVER-29921 Mongo 连接 uri 不支持数据库名称中的@字符
SERVER-30702停止在 Masserts 中打印堆栈跟踪
SERVER-31046在 mongod 启动期间从记录的解析选项中删除敏感信息
构建和包装
SERVER-30853更新 Mongod 初始化脚本以设置无限的锁定内存
当 lambda 表达式具有未指定的显式返回类型时,SERVER-31016返回类型'std :: __ 1 :: cv_status'必须与先前的返回类型'std :: __ 1 :: cv_status :: __ lx'相匹配
SERVER-32271在稳定分支上将最低 MacOS 版本提升到 10.8
SERVER-32286从 Debian SystemD 服务文件中删除 Type = forking
Internals
SERVER-27801 external_auth 测试应为每个测试定义 KRB5CCNAME
SERVER-29259初始文档插入时未创建身份验证/授权索引
SERVER-29623在 inMemory 存储引擎上修复 system_authorization_indexes.js
SERVER-30482 Mongos 不应将会话关闭到配置的 ShardingTaskExecutorPoolMinSize 以下
SERVER-30565 burn_in_tests.py 不应导致编译任务失败
SERVER-30634 Git 在 Windows 上检测到所有文件已更改,导致 burn_in_tests 任务在 Evergreen 中超时
SERVER-30649检查$ elemMatch 内部的每个表达式是否与给定索引兼容
SERVER-30720 SharedBuffer :: grow_reallocate 中的整数溢出
SERVER-30770 system_perf.yml:使用新的 DSI 界面并清除
SERVER-31119编译失败,提升为 1.62
SERVER-31225 mongod 进程在侦听连接之前分叉
SERVER-31379使 ldap_authz_authn.js 期望最近添加的 LDAP 组
SERVER-31380添加与 tcmalloc 有关的信息,以从系统获取和取消使用内存
SERVER-31440 Connpool HostTimeout 与回调锁定的获取/释放竞赛
SERVER-31505简化 Snappy 压缩器
SERVER-31516 NamespaceString 的无参数构造函数导致对象初始化不正确,稍后可能导致段错误
SERVER-31621跨分支同步 buildscripts/scons.py
SERVER-31670更改由 copy_sets_jscore_passthrough 使用的副本集固定装置,以使其辅助节点具有零票
SERVER-31717在 Ubuntu 16.04 构建器上强制使用 C 语言环境
SERVER-31818添加服务器参数以禁用 MarkThread{temporary}空闲
SERVER-31827在升级降级后,使 multi_rs.jsawait 次要状态
SERVER-31957从 etc/system_perf.yml 中删除时间序列支持
SERVER-31997为 CompatibleFirst 策略添加其他单元测试
SERVER-32044在绩效项目中使用参数化的 branch_name
SERVER-32061更新 ldap_authz_authn.js 以反映 LDAP 测试服务器的更改
SERVER-32087运行 sys-perf 和 mongo-perf 故障的测试阶段应导致出现红色常绿框
SERVER-32260从 mongorepo 中调用 load_setup.py
SERVER-32410在尝试执行身份验证之前验证 User :: CredentialData
SERVER-32704 sys-perf:跳过验证 SERVER-32243 启用的操作日志
SERVER-32788更新“辅助性能” sysperf 测试以使用不投票的辅助
WT-3079确保所有树木都被逐出
WT-3248具有大量溢出项的工作负载的性能下降
WT-3296 LAS 表修复/改进
WT-3303首次访问后备表期间出现死锁
WT-3370在 txn 中免费使用堆恢复代码
WT-3379避免次要成绩下降
WT-3618 WT 从常绿构建中移除 solaris
WT-3643使用 recover = error 打开数据库后,恢复未运行
WT-3681不要截断恢复中的最后一个日志文件
WT-3776光标删除操作太早取消了页面固定
3.4.10 Changelog
Security
SERVER-25855在 mongos_cache_invalidation.js 中增加更多超时
SERVER-28727 mongoldap 不应内联打印每个获得的角色的数据库
Sharding
SERVER-29932将 assert 添加到 mapReduce_inSharded_outSharded.js
连续配置降压套件中的SERVER-30825黑名单 shard_existing_coll_chunk_count.js
SERVER-31049具有排序规则的视图在分片群集中无法正常工作
SERVER-31091 config server balancer stop 命令不遵循 maxTimeMS
SERVER-31111添加 assert.command 用来迁移 Big_balancer.js
SERVER-31204如果对不同的 mongos 执行,则在 enableSharding 之后调用 shardCollection 可能会失败
Replication
SERVER-29772提供 3.2 和 3.4 的选项,以允许完成初始同步,即使遇到 renameCollection 条目也是如此
SERVER-30830 applyOps 在不存在的集合/数据库上应用 CRUD 操作时应返回 NamespaceNotFound
SERVER-30840延长 replsets/index_delete.js 中的超时(仅 3.4)
SERVER-30842回滚后,请勿尝试为 Client 端设置上次操作时间
来自 3.2 初始同步变体的SERVER-31467黑名单 initial_sync_rename_collection_unsafe.js
Query
发出包含嵌套非文本字段作为索引前缀的$ text 索引查找后,SERVER-31139 mongod 发生致命错误
SERVER-31366 profile_getmore.js 不容许 killCursors 命令
JavaScript
SERVER-29651在某些函数中接收到中断 signal 时将被忽略。
SERVER-30362 JavaScript DBCollection.toString()停止工作
SERVER-30502 –disableJavaScriptJIT 不会禁用 JIT
Storage
SERVER-15723避免为数据库中的 rename_collection 锁定 G_X
SERVER-28637wiretiger 日志文件随每个服务器启动/停止而累积
SERVER-30927将 readConcern afterClusterTime 用于初始化同步操作日志查询
SERVER-31403在 v3.2 和 v3.4 上禁用 mongo-rocks 变体
Operations
SERVER-19076 printShardingStatus/sh.status 应该将适当的缩进传递给 tojson()以获取分片键
SERVER-28821 MozJS ASAN 集成不应始终保证所有内存都已释放
SERVER-30361 mongod.conf bindIp 选项接受伪造的参数
SERVER-30769 Mongo shell 抛出“自动完成期间的异常”
SERVER-31176 mongo shell 应该使用 stderr 进行密码提示
构建和包装
SERVER-23516使用 apt-get update chowns 用户进入 mongodb
SERVER-30166在某些源文件中使用字符串代替 std :: string 会阻止编译
SERVER-30558从主版本中删除 Solaris 版本
SERVER-31197 building.md GCC 版本要求已过时
SERVER-31338 RHEL 编译任务在每晚 3.4 分支的驱动程序中失败
Internals
SERVER-21933更新自述文件
SERVER-29087 system-perf.yml 需要更改为使用时间序列 html 文件的新名称
SERVER-29287将 pcre 升级到 8.41
SERVER-29524 sys-perf:调用 Infrastructure_provisioning.py 而不是 Infrastructure_provisioning.sh
SERVER-29565删除 sys-perf 比较任务
SERVER-30045单元测试二进制文件的调试符号未在非 GDB 平台上上传
SERVER-30117 FeatureCompatibilityVersion :: onInsertOrUpdate 仅应在提交时写入服务器参数
SERVER-30241将工作负载 html 附加到常绿任务
SERVER-30891 perf.yml:使-repl 变体频繁运行
SERVER-30938在 system_perf.yml 中启用 ycsb-wmajority 测试
SERVER-31006在所有分支机构使用最新版本的策展人
SERVER-31108更新微基准的基准标记
SERVER-31271不要为 js 线程使用 nspr 分配器以获得更好的 ASAN
SERVER-31273使用源代码/接收器版本的快照功能
SERVER-31427为 Enterprise SLES 11/12 和 Ubuntu1604 s390x 禁用后退
SERVER-31527调整测试后重新设置 sys-perf(3.4.9 和 3.2.17)
WT-3263如果完全关闭,则允许在重新启动/恢复时进行存档
WT-3264永久更改为禁用日志记录最终应删除所有日志
WT-3284 tree-walk 重新启动错误
WT-3308添加跟踪 Yield 循环的统计信息
WT-3351恢复 assert 失败:old_lognum <lognum
WT-3406对帐正在选择保留记录以进行写入。
WT-3461调整系统时钟后避免长时间睡眠
WT-3470避免打开元数据游标以打开/删除表
WT-3533逐出手把可以重新打开手把进行 match
WT-3590如果在干净关闭期间写入失败,请保持数据一致
3.4.9 Changelog
Sharding
SERVER-20392分割现有的小型集合会导致大量的块
SERVER-30183在碎片上加入活动 moveChunk 的 moveChunk 可能不尊重其 waitForDelete
SERVER-30487 RangeDeleter 在 await 多数事务的同时保持 WT 事务打开
SERVER-30636 RangeDeleterassert 由于复制滞后而失败
Replication
SERVER-28277需要增加 read_committed_with_catalog_changes.js 中的超时
SERVER-29802非原子 applyOps 命令不应获取全局排他锁
SERVER-30554非原子地应用仅 CRUD 的操作时,在 applyOps 中放松锁定模式
Query
SERVER-30189减少大型$ in 表达式对分配器的调用
Write Operations
SERVER-27317 FeatureCompatibilityVersion 为 3.2 时,使用 Decimal128 值插入文档会导致套接字关闭
JavaScript
SERVER-30875添加对 JS 范围的“无主 bson”模式的支持
SERVER-30971在 mapReduce 中使用“范围”字段会触发 BSONObj 所有权错误
Storage
SERVER-26239改进了 inMemory 存储引擎对 WT_CACHE_FULL 的处理
SERVER-30490使用 USE_RTTI = 1 编译 RocksDB
SERVER-30790 WiredTiger 上的 ServerStatus 无需任何锁定即可访问存储引擎
构建和包装
SERVER-29686从 mongodb-org [-unstable] deb metapackage 中删除/ var/lib/mongodb
SERVER-30562避免为社区构建运行许多重复的 ARM64 测试
Internals
SERVER-26377跳过在 LSM 构建变体上使用 compact 命令的正在运行的 FSM 工作负载
SERVER-26824启用 Balancer 时跳过依赖 nUpserted 或 nRemoved 的 FSM 工作负载
SERVER-28824未处理的挂起分析器异常转义循环以从每个进程获取线程
SERVER-29431 initialsync.js 无法验证初始同步是否成功
SERVER-29714将 exception 消息添加到 Validate_Locale.cpp
SERVER-30509在 burn_in_tests.py 中更新 Evergreen API URL
SERVER-30643 SSL 的性能下降
WT-3329由于工作量统一且 collections 数量少,驱逐在选择驱逐候选人方面做得很差。
WT-3438固定计数时不要调整驱逐线程计数
WT-3499检查点可以错过尚未提交的项目
3.4.7 Changelog
Sharding
SERVER-29817优化 ChunkManager 和 CollectionMetadata 的增量更新性能
SERVER-30058平衡器策略在“超出大小”条件下不应将碎片移出碎片
SERVER-30060优化分片均衡器的集群统计信息收集
Replication
SERVER-27581 multiInitialSyncApply_noAbort()中的 shouldRetry()逻辑过于激进
SERVER-28192 priority_takeover_one_node_higher_priority jstest 需要更长的 stepDownGuard
SERVER-28677 InitialSyncer :: _ setup_inlock()应该重置上次应用的持久 optime。
SERVER-29015如果我们处于维护模式,则 TopologyCoordinator 不应过渡到单节点副本集中的候选角色
SERVER-29240添加测试以确保为初始同步期间滚动的加盖集合创建有效的索引
SERVER-29282 SECONDARY 节点上的分组插入超出 BSON 文档大小
SERVER-29297 stepUp 应该在 awaitReplication 中 await 持久性
SERVER-29383当 catchUpTimeoutMillis 为 0 时,我们应该完全跳过追赶
SERVER-29540 awaitNodesAgreeOnPrimary 应该记录重试原因
SERVER-30049 applyOperation_inlock()允许 Collection :: insertDocument()中的异常渗透到调用方
SERVER-30054更新 tags.js 以使索引 3 和 4 上的节点不可读
SERVER-30138在 initial_sync_invalid_views.js(3.4)中将节点 1 设为不可消除
SERVER-30139增加 replsetprio1.js 中的 waitForState 超时
SERVER-30411(3.4)last_vote.js 应该使 assertCurrentTerm 异常安全
Query
SERVER-29299删除 evalc.js 并将 currentOp 添加到 basicPlus.js 的后台操作中。
Storage
SERVER-27831在“本地”数据库上列出集合并为基于 KVCatalog 的存储引擎启用了复制而没有文档锁定的情况下出现死锁
SERVER-28737让 ephemeralForTest 使用 std :: mutex 保护其内部数据结构
构建和包装
SERVER-28171在 evergreen.yml 中将 Python 2.7 用于所有 python 调用
SERVER-30199'SConfBase'对象没有属性'CheckBoostMinVersion'
Tools
TOOLS-1109无法在 arm64 上构建(不支持 syscall.Dup2)
TOOLS-1741 mongoimport –uri 传递 Atlas 连接字符串 URI 时引发错误
Internals
SERVER-26452 namedCollection 应该处理写冲突
SERVER-28046将 replsets/read_committed_on_secondary.js 中的超时增加到 10 分钟
SERVER-28596将 compile_all 中的挂起或失败的测试上传到 S3
SERVER-28991消除了在 resmoke.py 中使用各个线程将日志输出刷新到 Logkeeper 的问题
SERVER-29035更新 system-perf.yml 基准参考
SERVER-29327防止 DBDirectClient 查询将 MaxTimeMS 存储在游标上
SERVER-29568通过 setParameter 启用 OpenSSL 密码套件的配置
SERVER-29886 Hang 分析器不应在 ASan 构建器上生成核心转储
SERVER-29947实施存储节点看门狗
SERVER-30132 Storage Node Watchdog 需要检查日志目录
SERVER-30169增加看门狗测试超时
SERVER-30415在 Evergren 的自动进程终止中排除新的“常绿”代理二进制名称
SERVER-30433增加看门狗测试超时
TOOLS-1542转储和导出不应在运行前计算视图
TOOLS-1563使用 mongodb 3.4“当前”测试后 Windows 测试失败
TOOLS-1577使用有关 mongoreplay 的信息更新自述文件
TOOLS-1713将 mongoreplay evergreen 配置.evergreen.yml 移到 common.yml 中
TOOLS-1743 legacy24 和 legacy26 dumprestore 测试在主数据库上失败
3.4.6 Changelog
Sharding
SERVER-27789增加 command_that_write_accept_wc_ *中的超时
连续降压套件中的SERVER-28351黑名单 move_stale_mongos.js 和 split_stale_mongos.js
SERVER-28418如果未找到请求的块边界,请在 mongod 上执行 split 命令返回陈旧的版本错误
SERVER-29489平衡器统计信息生成在没有 maxTimeMS 或超时的情况下对分片调用“ listDatabases”
Replication
SERVER-25765命令即使抛出异常也应 await 写关注
SERVER-26848不同步更多数据时退出追赶模式
SERVER-28100扩展 ReplSetTest.awaitNodesAgreeOnPrimary()以接受可选的 ExpectedPrimaryIndex
SERVER-28186在 repl10.js 测试中增加 slaveDelay
SERVER-28326将节点添加到 1 个节点副本集后,await 主节点在 initial_sync4.js 测试中稳定下来
SERVER-28378在 priority_takeover_two_nodes_equal_priority.js 中延长辅助追赶期
SERVER-28676 [v3.4] minor_version_tags_old_new_old.js 不应使用 replSetStepUp 命令
SERVER-28677 InitialSyncer :: _ setup_inlock()应该重置上次应用的持久 optime。
SERVER-28751允许 stepDown 命令在追赶模式下对主服务器起作用
SERVER-28803增加 clean_shutdown_oplog_state.js 的超时
SERVER-28813删除集合,然后在同步中进行虚拟写入来自助手
SERVER-28877取消复制执行程序中的竞争会导致选举 assert。
SERVER-28969等到 catchup.js 的情况 3,直到选民有最新的操作时间
SERVER-29056 InitialSyncer :: _ startupComponent 应该由于关机而在返回 CallbackCanceled 之前重置“组件”
SERVER-29100在 get_last_error.js 中 await 相同的日记记录要求
SERVER-29240添加测试以确保为初始同步期间滚动的加盖集合创建有效的索引
SERVER-29382修复与 ReplicationCoordinatorImpl :: CatchupState 中的超时有关的取消竞赛
SERVER-29536 apply_batch_only_goes_forward.js 应该配置为使用 2 个可选节点,而不是 3 个
Query
SERVER-29197初始同步节点克隆带上限的集合时悬空的索引记录,该集合在集合扫描期间删除记录
Aggregation
SERVER-28717 $ lookup 是表示数组内字段的点划线路径时,未按预期扩展'localField'
SERVER-29001由于聚合管道较长,导致 views_test(–dbg = on –opt = off)中的堆栈溢出
SERVER-29618 $ lookup 和$ unwind 之后聚合管道中的$ geoWithin 返回错误结果
SERVER-29647避免将$ match 移到$ sort $ limit 之前
SERVER-29676 arrayToObject 不应因 null 的显式值错误而出错
Storage
SERVER-22322来自 listIndexes 的“没有数据库”的更好的错误消息
SERVER-27347仅关闭繁忙的 WiredTiger 标识上的空闲缓存的游标
SERVER-29011对 WiredTiger 的紧凑调用采用多个重叠的 WT_SESSION 对象
Operations
SERVER-29075将剩余的 Client 端元数据添加到 currentOp 输出中
SERVER-29509 shell_history.js 应该允许扩展文件 ACL
构建和包装
SERVER-27260 systemd 服务文件不应以–quiet 开头 mongod
SERVER-29409将 Amazon Linux Enterprise 版本减少到每周一次
SERVER-29503将服务器版本从 10.10 实例迁移到新的 10.12 实例
Internals
SERVER-28052使 SHA1Hash 成为完整的类
SERVER-28162调用 getLatestProfilerEntry()的测试应从动态初始同步传递套件中列入黑名单
SERVER-28323不要通过 JavaScript 范围传递功能 ID 号
SERVER-28864集群内默认压缩
SERVER-28960单元测试“死亡测试”不应转储核心
SERVER-28997限制 SCRAM-SHA-1 缓存对安全内存的使用
SERVER-29040删除 rpm systemd 服务文件中已弃用的“运行”参数
SERVER-29148增加 sys-perf 中 mongos 测试的运行时间
SERVER-29237在 asio connpool 中添加 maxConnecting
SERVER-29433改进 ReplicaSetFixture 初始化期间的日志记录
SERVER-29485在 sys-perf.yml 中使用供应商提供的 YCSB
SERVER-29516在 OS X 上构建的工具需要在 CGO_{C,LD} FLAGS 中设置-mmacosx-version-min
SERVER-29527使用 Infrastructure_provisioning.sh 和 Infrastructure_teardown.sh
SERVER-29646 hang_analyzer.py 应先将 SIGUSR1 发送到 resmoke.py,然后再附加到任何进程
SERVER-29680更新 perf.yml 微基准 replset 配置
WT-3219引入皮棉后,使 clang-analyzer 作业失败
WT-3297支持 gcc/clang -fvisibility = hidden 标志
WT-3327如果时间倒流,检查点可能会挂起
WT-3331测试格式因时间回滚而中止
WT-3362游标打开在检查点期间永远不会阻塞
WT-3369 WT_CURSOR-> uri 应该始终与用于打开游标的 URI 匹配
WT-3373由于内部页面拆分错误导致访问冲突
3.4.5 Changelog
Sharding
SERVER-28513 stale_mongos_updates_and_removes.js 应该只调用一次 surePrimaryShard
SERVER-28850覆盖率分析缺陷 100646:PW.PARAMETER_HIDDEN
SERVER-28854在 assert 详细信息中用 msg 替换 msgBase
SERVER-28925在 addShard 实现中使用 listDatabases( {'nameOnly': true})
SERVER-29016配置主数据库可能会在关机时挂起,以 awaitBalancer
SERVER-29066分片的 findAndModify 如果数据库不存在,则不会隐式创建数据库
Replication
SERVER-26360由于节点过时而无法从其源同步到 RECOVERING 后,即使有可用的有效同步源,它也将永远无法恢复
SERVER-26741在独立模式下重新启动时,由临时集合触发的“致命声明 16360”被删除
SERVER-27966 last_vote.js 在退出节点 0 预重新配置之前应 await 复制
SERVER-28387在 server-23299-1.js 中的降级期间延长辅助追赶期
SERVER-28480 last_vote.js 在重新配置之前应在节点 1 上使用 ReplSetTest :: stepUp()
SERVER-28490获取 bgsync 中的锁定后检查状态
SERVER-28688关机和降压之间的死锁
SERVER-28815 multi_rs.js-在升级/降级过程中不使用\ {}降级主要
Query
SERVER-26765将视图测试移至 jsCore
SERVER-28952如果不同键是数组组件,则多键索引不符合 DISTINCT_SCAN 的条件
Storage
SERVER-28038改进 WiredTigerRecordStore 不变量的可见性
SERVER-28357 MMAPv1 压缩操作可能会触发“超出配额”错误(12501)
SERVER-28427具有超时的 GlobalLock 仍可以无限期阻止
SERVER-29088在 Collection 类中缓存 uuid 以修复性能下降
Operations
SERVER-15407在 Mac OS X 和 Linux 上设置线程名称
SERVER-26634为服务器词汇类型集成 GDB 漂亮打印机
构建和包装
SERVER-29352为 OS X 企业版本禁用 SNMP 集成
SERVER-26781添加对使用 openssl 1.1.0 进行构建的支持
SERVER-27682为 MongoDB GCC 和 clang 工具链添加 SCons 变量文件
Internals
SERVER-19677英特尔库自检入单元测试
SERVER-21842设置由 resmoke.py 创建的 Event 对象时,在 Windows 上生成 report.json 文件并转储堆栈
SUSE 11.4 不支持SERVER-27279 pthread_setname_np
SERVER-27281 pkill/pgrep 在 Linux 上找不到 mongod
SERVER-27285添加一个带有 replset 的 jsCore 直通,该 replset 定期 SIGKILLs 一个辅助
SERVER-27408 burn_in_tests.py 在生成外文件时并不总是排除标记的测试
SERVER-27570严格检查顶级命令 BSON 对象
SERVER-27727在 hang_analyzer 中隐藏空闲线程
SERVER-27869创建 hang_analyzer.py 输出的构建工件并将其上传到 S3
SERVER-27870添加选项以使用明确的 PID 列表调用 hang_analyzer.py
SERVER-27871添加 hang_analyzer.py 选项以生成核心转储,默认为关闭
SERVER-27873转储 hang_analyzer.py 中 SpiderMonkey 中运行的所有代码的 JavaScript 回溯
SERVER-27874使用 LockManager 锁定和/或 pthread_mutexes 显示锁定并为线程生成图
SERVER-27877 hang_analyzer.py 应该从 GDB 中的不同线程中删除堆栈中的重复数据
SERVER-28007在 s390x 上重新启用对 CRC32 硬件加速的支持
SERVER-28132从 evergreen.yml 中的 hang_analyzer 调用中删除 sudo
SERVER-28291 mongodb-uniqstack 应该基于 frame.pc()而不是 frame.name()进行重复数据删除
SERVER-28348检测涉及 LockManager 锁和/或 pthread_mutexes 的单进程死锁
SERVER-28349 hang_analyzer 生成的进程输出日志缺少 stderr
SERVER-28354在 hang_analyzer 中添加新选项以提供基本流程名称
SERVER-28400更新到 Firefox ESR 45.8.0
SERVER-28415在 ARM 平台上的 hang_analyzer.py 中加载 Python 模块之前,运行线程回溯
SERVER-28416处理 hang_analyzer.py mongodb-uniqstack 模块中的 GDB 错误
SERVER-28463将设置的调度程序锁定添加到 Hang Analyzer 中,以防止线程在 GDB 中运行
SERVER-28466 hang 分析器不应附加到 Evergreen 中的 resmoke.py
OS X 上的SERVER-28479 hang_analyzer.py 无法找到 Python 进程
SERVER-28584从 sys-perf 中删除 initialsync_{WT|MMAPv1} _dr 任务
SERVER-28588处理 hang_analyzer.py find_frame 函数中的 GDB 错误
SERVER-28710向量化 send()应该处理 EWOULDBLOCK
SERVER-28760将 Export 日志记录添加到旧式写入路径
SERVER-28868在 ReplSetTest.prototype.checkOplogs()中的 oplog 光标上设置 noCursorTimeout 选项
SERVER-28971 depth_first_search 算法中的错误在访问的节点上错误地递归
SERVER-28995 hang_analyzer.py 的 JstackDumper 类中的格式字符串占位符太少
SERVER-29018 3.4:视图中的 findMore 中的 mongos segfault 与 find batchSize 为 0
SERVER-29068网络中断后,在 set_feature_compatibility_version.js 中重试操作
3.4.4 Changelog
Security
SERVER-27821使 large_role_chain.js 不在 DEBUG 系统上运行
SERVER-28014如果首选 SSL 模式为 SSL,请记录不使用 SSL 的连接
Sharding
SERVER-20854保持互斥时不要从配置服务器刷新数据库和收集信息
SERVER-22611 ChunkManager 刷新有时可能会导致完全重新加载
SERVER-27681更好地并发控制分片元数据刷新
SERVER-27701 mongos 因“不变失败 remote.status.isOK()”而崩溃
SERVER-28519 authCommands.js(v3.4)中 mongos 和配置服务器的详细信息
SERVER-28697忽略 sharding_balance4.js 中的一些 NoProgressMade 错误
SERVER-28698将“ chunkDataCommitted”故障点用于 migration_critical_section_concurrency.js
SERVER-28807 parseShardKeyPattern 可能因 Importing 错误而泄漏
Replication
SERVER-24498对分片系统中的线性化读取进行写测试
SERVER-26360由于节点过时而无法从其源同步到 RECOVERING 后,即使有可用的有效同步源,它也将永远无法恢复
SERVER-26830随机优先接管超时
SERVER-27098查看并修复 DataReplicator 中的日志级别
SERVER-27120提高生产者/应用者线程与降压/升压之间的同步
SERVER-27329将 BackgroundSync :: _ rollback 移至 rs_rollback.cpp 并对其进行单元测试
SERVER-27403验证提议的同步源时,请考虑 term 和 rbid
SERVER-27543为 oplog 查询创建新的元数据
SERVER-27834初始同步期间的索引构建不应隐式创建集合
SERVER-27966 last_vote.js 在退出节点 0 预重新配置之前应 await 复制
SERVER-27995使复制命名约定一致
SERVER-28135 stepdown.js 应该始终 fsyncUnlock()所有辅助节点
SERVER-28181涉及 oplog 提取程序和复制协调器的互斥锁的死锁
SERVER-28184删除 lection_timing.js(和 lib/election_timing_test.js)
SERVER-28185删除 reconfig_without_increased_queues.js
await 新的主要对象时,SERVER-28272延长 step_down_during_draining.js 中的超时
SERVER-28275修复 ReplicationCoordinatorImpl :: _ startElectSelfIfEligibleV1()中的误导性日志消息
SERVER-28278await 所需的同步源复制伪写入,然后再在 syncFrom shell 帮助器中运行 replSetSyncFrom
SERVER-28376 ReplSetTest.initiate()应该在请求节点 0 升级为主节点之前调用 awaitReplication
SERVER-28377在初始同步期间,请勿检查是否最后一次应用的远程操作早于 OplogFetcher 第一批中获取的本地最后操作
动态初始同步套件中的SERVER-28446黑名单 top.js
SERVER-28695 step_down_during_draining.js 应先 await 写入持久,然后再使用故障点禁用在辅助节点上的复制
SERVER-28699 ReplSetTest 应该在启动结束时始终 awaitawaitSecondaryNodes()
Query
SERVER-27711 createIndexes 命令不再支持 maxTimeMS 选项
SERVER-27761视图可以在排序规则不同于基础视图的视图之上创建
SERVER-27972为数据库/集合添加一个 featureCompatibilityVersion 操作观察者
SERVER-28121 DurableViewCatalog 不应在视图 ns 中抛出空字节
SERVER-28498停止在“ Enterprise RHEL 6.2 DEBUG 代码覆盖率”构建器上运行 rlp *任务
SERVER-28546文档可能会从部分索引中错误地取消索引
Write Operations
SERVER-26703插入深层文档应失败,并显示错误
SERVER-28347禁止导致文档超过深度限制的更新
Aggregation
SERVER-8433聚集深度嵌套的文档可能会导致堆栈溢出
SERVER-18794添加聚合表达式以将对象转换为键,值对的数组
SERVER-23310添加表达式以将成对数组转换为对象
SERVER-27644在视图上与众不同不会“拉平”数组成员
SERVER-28409在 testshard1.js 期间降低详细程度
JavaScript
SERVER-22520对 ASAN 泄漏检查器进行有关 JS 分配的教育
Storage
SERVER-22954 MigrationDestinationManager 不应直接使用 MMAPv1 持久接口
SERVER-28548 mmap b 树的删除可能导致索引读取器或写入器返回无效数据
SERVER-28572更新测试用例以使用有效的自定义 WiredTiger 配置值
SERVER-28645需要太多锁而不是崩溃的失败命令
SERVER-28646如果 logOps 导致 txn 失败,则不报告操作已通过
Operations
SERVER-16821在同一秒内收到多个 SIGUSR1 时,请勿中止服务器
SERVER-28380添加仅测试的 clearLog 命令以清除 RamLog,在检查特定日志消息时在测试中使用它
构建和包装
SERVER-20540支持使用拆分 DWARF 调试信息进行编译
SERVER-28390启用增量链接标志后,将链接目标标记为“贵重”
Internals
SERVER-21539 resmoke.py 收到 SIGUSR1 时生成 report.json 文件
SERVER-26952缓存 SCRAM-SHA-1 ClientKey
SERVER-27191挂起分析器应转储锁 Management 器状态
SERVER-27684从 hang_analyzer.py 中删除自我施加的 2 分钟限制
SERVER-27687 ppc64le 构建错误地指示指针大小为 32
SERVER-27691 ServiceContext :: setKillAllOperations 应该替换为可中断正在运行的操作的操作
SERVER-27853调用 hang_analyzer.py 之前先获取调试符号
SERVER-27854在 copysetset.py 中更快地启动副本集
SERVER-27866 globalLockManager 转储应以十进制和十六进制打印线程 ID
SERVER-27868在创建单独符号文件的所有构建变体上上传调试符号
SERVER-27875在 Windows 上的 hang_analyzer.py 中转储关键部分
SERVER-27876 hang_analyzer.py 应该从 Windows 调试器 CDB 中的不同线程中删除堆栈中的重复数据
SERVER-28091 OS X 上的磁盘统计信息收集仅捕获计算机正常运行时间内平均的 I/O 利用率
SERVER-28169在微基准测试中设置逐出=(threads_min = 1)
SERVER-28259记录通过 NetworkInterfaceASIO 构建 Export 连接的时间
SERVER-28329从 Microbenchmarks 中删除比较任务
SERVER-28426更新 etc/longevity.yml 以使用 run_test.py 而不是 run-${test} .sh
SERVER-28430通过 NetworkInterface 在 ConnectionPool 上公开 dropConnections()方法
SERVER-28462更新 perf.yml 以与最新的稳定版本进行比较
SERVER-28489 MockStream 暂停时应处理取消
SERVER-28526在 burn_in_tests.py 中更新 Evergreen API URL
SERVER-28530 SSLThreadInfo 在析构函数中调用构造函数
SERVER-28547 sharding_continuous_config_stepdown 套件实际上并未降低任何节点
SERVER-28586“执行 jepsen 设置”功能应在尝试更改到子目录之前先检出分支
SERVER-28652添加日志记录以跟踪 Export 连接池的大小
SERVER-28692移动 Shell tarball 生成任务
SERVER-28748在 mongo shell 测试的程序包冒烟测试中设置虚拟内存 ulimit
SERVER-28823 burn_in_tests.py 由于缺少“无”检查而未使用 api 服务器默认设置
WT-98无需搜索即可更新当前光标值
WT-2439加强对帐页的布局
WT-2990检查点加载 live_openassert 失败
WT-3136错误修复:WiredTiger 不检查 sprintf 调用以返回错误
WT-3155删除 WT_CONN_SERVER_RUN 标志
WT-3182默认情况下,切换 make-check 以运行简短测试套件
WT-3190增强逐出线程自动调整算法
WT-3191 lint
WT-3193结束验证打开手柄和逐出之间的竞赛
WT-3196切换块时与 LSM 竞赛并逐出
WT-3199错误:驱逐声明失败
WT-3202 wtperf 在 in_memory = true 模式下报告错误:没有这样的文件或目录
WT-3203批量加载状态更改可能会导致 match
WT-3204驱逐更改会降低 LSM 的性能
WT-3207带有 checkpoint_wait = false 的丢弃不应该 await 检查点
WT-3208测试格式挂有 9mb 缓存
WT-3211 WT_CURSOR.remove 不能始终保持其位置。
WT-3212当给定表的排序规则未知时,“ wt dump”崩溃
WT-3213生成的测试/格式 CONFIG 在下次运行时无效
WT-3216添加对 clang-tidy 的支持
WT-3224 LSMassert 失败 pindex-> entries == 1
WT-3225 WiredTiger 不会在 CentOS 7.3.1611 上使用 clang 进行构建
WT-3227 Python 测试套件在错误输出中插入了不必要的空格。
WT-3228覆盖删除不应返回 WT_NOTFOUND
WT-3234更新 clang 4.0 的 WiredTiger 版本。
WT-3238 Java:Cursor.compare 和 Cursor.equals 会引发有效返回值的异常
WT-3240覆盖率报告
WT-3243对日志插槽释放进行重新排序,因此联接不必 awaitIO
WT-3244内存配置中的元数据操作失败
WT-3249单元测试 test_readonly 失败,因为它无法打开 WiredTiger.lock
WT-3250 Windows 上的统计信息不正确
WT-3254 test_reconfig02 使用了错误的配置字符串
WT-3262模式操作不应 await 缓存
WT-3265在将句柄转换为独占模式时,验证驱逐中的命中 assert
WT-3271逐出调整陷入循环
3.4.3 Changelog
Sharding
SERVER-27382删除 DBConfig :: reload 的用法
SERVER-27809将拆分逻辑移到 Chunk 类之外
SERVER-27940关闭时死锁 ReplicaSetMonitorManager
SERVER-28030将“初始块”写入从 ChunkManager 中移出
SERVER-28098摆脱 DBConfig :: getAllShardIds
SERVER-28106清理 ChunkManager :: findIntersectingChunk 的 Contract
SERVER-28111将 parallel.h/parallel.cpp 移至 mongo/s/client 下
SERVER-28155清理分片库依赖性
Replication
SERVER-20844初选时可以更快地启动 ReplSetTests
SERVER-26914改进日志消息以进行新鲜度检查
SERVER-26918 backup_restore.js-节点应在启动 FSMClient 端之前就主节点达成一致
SERVER-26930 backup_restore.js 应该在 fsmClient 端停止并且隐藏节点成为辅助节点之后 await 复制
与空的 OpTime 比较时,SERVER-27035 rs.compareOpTimes()引发异常
SERVER-27189 _getLastOpTime/_getDurableOpTime 无法正常处理丢失的节点
SERVER-27405修复 read_after_optime.js 中的 match
SERVER-27488将静态重新同步传递中的黑名单 bypass_doc_validation.js 列入黑名单
SERVER-27551 QuorumChecker 应该重试失败的请求
SERVER-27783删除 SyncSourceFeedback 中不必要的锁定
SERVER-27791将 gle/block2.js 和 gle/get_last_error.js 中的写关注超时从 30 秒增加到 5 分钟
SERVER-27794对 indexbg_drop.js 中的批量插入提供写关注
SERVER-27799仅在 maxSyncSourceLagSecs.js 中将 maxSyncSourceLagSecs 的 setParameter 应用于从站 2
SERVER-27808 backup_restore.js 应该 await 复制并重新评估主数据库,然后再向副本集添加新的隐藏辅助数据库
SERVER-27810确保 RepliSetTest.initiate()之后,副本集以节点 0 为主要节点时是稳定的
SERVER-27816增加 sync2.js 中的 wtimeout
SERVER-27837在 backup_restore.js 中排除重命名集合 FSM 工作负载
SERVER-27839在 ReplSetTest 启动的重新配置过程中允许降级
SERVER-27840添加 wtimeout 以在 protocol_version_upgrade_downgrade.js 中编写关注点
SERVER-27844增加 repl/block2.js 中的超时
SERVER-27847增加 apply_batch_only_goes_forward.js 中的超时
SERVER-27861使排水.js 中的故障转移更加可靠
SERVER-27889将 catchup.js 更改为可恢复 replSetStepUp 失败,因为该节点已经是候选节点
SERVER-27905修复 DataReplicatorTest :: DataReplicatorReturnsCallbackCanceledIfShutdownImmediatelyAfterStartup 之后的 match
SERVER-28005 Oplog 查询网络超时小于 maxTimeMs
SERVER-28013确保 ReplClientInfo 的上一个 opTime 不能向后移动
SERVER-28037将 db.js 中的默认 writeConcern wtimeout 提高到 10 分钟
SERVER-28041删除 sync2.js 中的 awaitNodesAgreeOnPrimary()调用
SERVER-28047 ReplSetTest._callIsMaster()应在主服务器上设置 slaveOk
SERVER-28050在 read_committed_stale_history.js 中降级后重新连接连接
SERVER-28075await 数据库在 simulateSuccessfulV1ElectionAt()中工作
SERVER-28110在请求远程主要降级时将 secondaryCatchUpPeriodSecs 设置为较小
Query
SERVER-28017 $ ne 应该在基于排序规则设置进行不区分大小写的查找时执行区分大小写的查找
Aggregation
SERVER-27253 $ lookup 和$ graphLookup 不会增加索引状态计数器
SERVER-27362 MapReduce 可以尝试注销游标而不持有收集锁
Storage
SERVER-3181向 listDatabases 添加选项以仅获取数据库名称,而不获取大小信息
SERVER-27807创建快照并将其注册到 replcoord 中是不同步的
SERVER-27857将 remove_during_mr.js 测试重写为 FSM 工作负载
SERVER-27936修复主/从 handleDuplicateDbName 中的锁释放不当
SERVER-28049“列表数据库”命令应仅在数据库锁定之前对名称应用过滤器
SERVER-28249使用 TCMalloc MarkThreadTemporarilyIdle 代替 MarkThreadIdle
WiredTiger
- SERVER-28026禁用 WiredTiger 收回线程的自动调整
MMAP
SERVER-24963并发的 collection.drop()和 system.indexes.count()可以触发 fassert
SERVER-27930重命名集合后使用未决数据访问游标可能会触发 fassert
SERVER-27996删除名称空间后,使用未决数据访问 system.namespaces 游标可能会导致崩溃
SERVER-28022强制 system.namespaces 记录移动后,使用未决数据访问游标可能会导致崩溃
TTL
SERVER-28154 ttl_sharded.js 中的 match 条件
Operations
当 mongod 是 Windows 服务时,SERVER-6065 db.shutdownServer()无法按预期工作
SERVER-16796增加日志恢复操作的日志记录活动
SERVER-27863在 NetworkInterfaceASIO 中重新安排早期警报,以避免 mongos 崩溃
构建和包装
SERVER-25309添加 RHEL 6 zSeries 构建变体
SERVER-27623 SLES11 s390x 构建应针对 z9-109,而不是 z196
SERVER-27836封装烟雾测试应重试验证步骤,而不应调用 converge
SERVER-27856停止在 ubuntu1604-arm64-large 发行版上运行并发套件
Internals
SERVER-21675从常绿任务名称中删除“旧版”
SERVER-23959选项,用于在 win32 中禁止在 smoke.py 中创建作业对象
SERVER-26522 CleanEveryN 输出应写入 logkeeper
SERVER-26523替换引发错误。用引发错误替换 TestFailure。
SERVER-26642 Windows 上的 JS 编译代码字符串长度限制
SERVER-27091将大型数据集的初始同步测试添加到系统性能测试中
SERVER-27234 Evergreen 任务磁盘统计信息的改进
SERVER-27700 WT 的二级性能在缓存已满的情况下降至接近零
SERVER-27784从 packager.py 中删除 httpget()
SERVER-27858将并发套件运行时的任务超时增加到 6 小时
SERVER-27920修复 Client 端上下文的错误锁定
SERVER-27935修复并发 fsyncLock 执行的序列化
SERVER-27963在 s390x 构建器上禁用 CRC32 硬件支持
SERVER-27983将 sys-perf 状态从$ HOME 移至/ data
SERVER-28000 sys-perf:在配置/下整理所有 dsi yaml 配置文件
SERVER-28067更新 sys-perf.yml 以复制到 cluster.json
SERVER-28086更新 system-perf.yml 标记的提交
SERVER-28147增加 sys-perf 分片测试的超时时间
SERVER-28239在主要卸任期间修复了传输层遗留问题中的双票持有人释放
TOOLS-1605有条件地在 smoke.py 中创建 Windows 作业对象
WT-2771添加统计信息以跟踪每棵树的脏缓存使用情况
WT-2790修复了 test_sweep01 中文本为假阳性的情况
WT-2833改进:向 wt dump 工具添加投影
WT-2898通过动态控制驱逐线程数来提高驱逐大量工作负载的性能
WT-2909创建自动测试,以在出错后验证检查点的完整性
WT-2994创建描述页面大小和关系的文档
WT-3080 Python 测试套件:添加时间戳或测试所用的时间
WT-3082 Python 测试套件:缩短默认运行,以避免请求请求超时。
WT-3083修复 wtperf 配置转储中的错误
WT-3086添加事务状态信息以缓存卡住的诊断信息
WT-3088错误:拆分后,不要逐出 Reader 可见的引用页面
WT-3091将统计信息添加到 test_perf0001
WT-3092从 autogen.sh 退出警告
WT-3093填充 WT_RWLOCK 结构使 WT_PAGE 结构得以 Developing。
WT-3097关于重新配置或关闭的竞赛可能导致 await 统计日志服务器
WT-3099 lint:静态函数声明,文档中的非文本字符
WT-3100测试错误:对格式进行加权删除,插入和写入操作。
WT-3104修复 wtperf 配置以进行逐出测试
WT-3105解决由于动态分配驱逐线程会话而导致的死锁
WT-3106将截断支持添加到命令行 wtUtil
WT-3108还将转储磁盘页面大小作为元数据信息的一部分
WT-3109Transaction 文档中的措辞修复
WT-3110为 WT 命令行 Util 添加更多测试用例
WT-3111 util_create()不会释放分配给“ uri”的内存
WT-3112处理列表锁定统计信息在逐出服务器中未增加
WT-3113添加详细模式以在驱逐卡住时转储缓存
WT-3114避免恢复后立即归档日志文件
WT-3115将 dhandle 锁更改为读/写锁
WT-3116 s_all 中的 Python 样式测试可能无法正确执行
WT-3118保护随机中止测试以防 child 启动异常缓慢
WT-3120解决了在 connection_close 中针对扩展中加载的文件系统的排序问题
WT-3121在测试套件中,创建加载扩展的标准方法
WT-3126错误:dist/s_all 脚本的引号放错了位置,导致错误的错误报告
WT-3127错误:CPU yield 调用不一定暗含内存障碍
WT-3128 wt printlog 如果找不到任何日志文件,则返回不支持的操作
WT-3130确保 extensions 可以访问数据库主目录
WT-3134覆盖率扫描报告 1368529 和 1368528
WT-3135 search_near()用于使用自定义整理程序的索引
WT-3137挂在__log_slot_join/__ log_slot_switch_internal
WT-3139增强 wtperf 以支持元素周期表扫描
WT-3143覆盖范围扫描报告 1369053
WT-3144错误修复:下降到空白页时,随机游标未找到
WT-3148通过许多小树提高驱逐效率
WT-3149更改逐出以从树中的随机位置开始新的步行
WT-3150减少检查点对收回服务器的影响
WT-3152将表锁从自旋锁转换为读写锁
WT-3156写入失败后触发 log_write 中的 assert
写入失败时WT-3157检查点/事务完整性问题。
WT-3159包含多个可变大小条目的索引的错误键
写入失败注入后WT-3161检查点挂起。
WT-3164确保在检查点错误时重置所有相关的 btree 字段
WT-3170从树上填充时清除逐出步行点
WT-3173为 s390x CRC32 硬件支持添加运行时检测
WT-3174覆盖率/皮棉清理
WT-3175内部页面拆分中出现新问题
WT-3179测试错误:fail_fs 中的 lang 消毒剂失败
WT-3180故障注入测试应仅作为“长”测试运行,并且不应创建核心文件
WT-3184使用自定义整理程序复制索引光标时出现问题
WT-3186修复日志记录循环中的错误路径和紧急检测
WT-3187使用繁忙的缓存池挂起关机
WT-3188修复日志 Logging 的错误处理,该错误处理可能导致致命错误挂起
WT-3189修复驱逐服务器中的段错误随机定位
3.4.2 Changelog
Sharding
SERVER-26562将 CommitChunkMigration 命令实现移入 Catalog 函数并对其进行单元测试
SERVER-26785重写 addshard2.js 以便能够将其从 last_stable 套件中删除
SERVER-26791 move/split/mergeChunk 命令对分片进行完整的元数据刷新
SERVER-26903当主数据库降级时,ShardingTest 使不可重试的写入失败,因为降级套件将选举时间超时从 10,000 毫秒降低到 5,000 毫秒
SERVER-27146强制执行 maxStalenessSeconds> = 90
SERVER-27258如果 v3.4 配置服务器从 mongo S 获得不支持的分片密钥,则它可能会因核心转储而崩溃。
SERVER-27321重命名 ScopedChunkManager :: getExisting 刷新并获取
SERVER-27364删除 DBConfig :: setPrimary
SERVER-27366删除 DBConfig :: enableSharding
SERVER-27381删除 DBConfig :: dropDatabase
SERVER-27393平衡器由于大量丢弃的分片集合而占用了 100%的 CPU
SERVER-27419将群集的“放置”命令移至单独的文件
SERVER-27428 MigrationChunkClonerSourceLegacy 的单元测试不 awaitonCommand 处理程序线程完成
SERVER-27460 RouterStageMerge :: kill()在 mongos 关闭期间可能崩溃
SERVER-27466在获取全局排他锁之前将 transitionToToPrimaryHangBeforeInitializingConfigDatabase 移动到
SERVER-27473从 DBConfig 删除写操作
SERVER-27480摆脱 ConfigServer 类
SERVER-27510仅比较 epoch 而不是 CollectionMetadata :: checkChunkIsValid()中的完整块版本
SERVER-27526摆脱所有 DBConfig :: isShardingEnabled 的非元数据使用
SERVER-27556清理分片请求处理代码
SERVER-27613删除 splitChunk 命令中发送的未使用的“ chunkVersion”字段
SERVER-27667摆脱分片请求类
SERVER-27726按操作类别将 ShardingCatalogManagerImpl 拆分为多个.cpp 文件
SERVER-27736 DBConfig 不应存储未分片的集合
Replication
SERVER-23759复制初始化时关闭节点可能会崩溃
SERVER-25860拼合/优化 fixup_info
SERVER-26528更改或清除同步源时添加其他日志记录
SERVER-26773 two_initsync.js 应该检查插入是否成功
SERVER-26945主从 ReplSource :: resyncDrop 不应假定从 listDatabases 结果获得的数据库名称在本地存在
SERVER-26951删除或改进 replset9.js
SERVER-27046 CollectionCloner :: _ findCallback 和 CollectionCloner :: _ insertDocuments 之间的竞赛
SERVER-27050确保检查 minvald 后上游节点不会回滚
SERVER-27052向 DataReplicator 添加异步操作支持
SERVER-27056不要为升压命令强制执行数据更新
SERVER-27079 DataReplicator 应该 await 上一个操作日志提取程序完成,然后才能开始下一次初始同步尝试
SERVER-27118默认关闭命令的'timeoutSecs'参数为 10 秒
SERVER-27123仅通过生成树更新提交点
SERVER-27125 pv1 中的仲裁员如果可以看到与候选人同等或更高优先级的健康初选,则应在选举中不投票
SERVER-27154 replSetRequestVotes 命令应 await 持久性
SERVER-27155 replSetRequestVotes 将 dryRun 投票记录为真实
SERVER-27157 replSetRequestVotes 在处理和记录请求之间不同步
SERVER-27216在 catchup.js 中将补时超时增加到 300 秒
SERVER-27231添加故障点以关闭重新评估同步源,用于操纵链的 jstest
SERVER-27282清理并修复 RS 回滚错误处理中的错误
SERVER-27295始终将旧的初始同步中的远程命令的 slaveOk 设置为 true
SERVER-27301将 OpObserver 转换为接口。 ServiceContext 应该始终返回有效的 OpObserver 实现。
SERVER-27323在 write_concern_after_stepdown_and_stepup.js 中使用 stopOplogFetcher 故障点而不是 rsSyncApplyStop 故障点
SERVER-27352修复 double_rollback.js 中的降压命令
SERVER-27365 reconfig_without_increased_queues.js 应该以优先级 0 初始化其副本集的节点 2
SERVER-27397在初始同步期间禁用 OplogFetcher 同步源重新评估
SERVER-27409 zbigMapReduce.js 应该对插入使用写关注,这样它就不会超出其操作日志
SERVER-27446 operation_latency_histogram.js 由于 repl 系统执行的读取操作在初始同步通过中失败
SERVER-27461重试连接以关闭主数据库,直到 shutdown_primary.js 失败
SERVER-27468不要在 3dot2 初始同步变体上运行动态初始同步传递
SERVER-27523 geo_s2cursorlimitskip.js 由于 repl 系统执行读取而导致初始同步传递失败
SERVER-27544 shutdown_primary.js 不应尝试在主节点上禁用 rsSyncStopApply 故障点
SERVER-27582 lastVote 没有正确初始化
SERVER-27583 SyncSourceFeedback 应该在 ReplicationCoordinatorExternalStateImpl 锁之外关闭
SERVER-27611 DatabaseCloner :: shutdown()不会关闭 CollectionCloner
SERVER-27624 SyncSourceFeedback 应该在设置_reporter 之前检查是否关闭
SERVER-27656在 last_vote.js 中重新配置期间,确保节点 0 不是主要节点
SERVER-27657 last_vote.js 在 continue 之前应 await 重新配置到达所有节点
SERVER-27677 CollectionBulkLoader :: _ releaseResources()应确保有可用的 Client 端
SERVER-27678 CollectionCloner 最多应调用一次_finishCallback
SERVER-27680在计划新的 OplogFetcher 之前,使 bgsync 检查 stopOplogFetcher 故障点
SERVER-27712不要在 user_defined_roles_on_secondaries.js 中指定_id 字段
SERVER-27741修复 DataReplicatorTest ::: DataReplicatorResetsOnCompletionCallbackFunctionPointerUponCompletion 中的 match
SERVER-27775修复 collection_cloner_test CollectionClonerTest ::: CollectionClonerCannotBeRestartedAfterPreviousFailure 之后的 match
Query
SERVER-24027计划者不考虑反转索引扫描方向以获得 SORT_MERGE 计划
SERVER-26734 indexStats 操作对于$ indexStats 运算符没有足够的特权
SERVER-27042修复 currentop.js 并使之现代化
SERVER-27438通过 mongos 进行的旧查询丢弃$ comment
SERVER-27449 set_feature_compatibility_version.js 不应投票给预期崩溃的副本集成员
SERVER-27465使用 setYieldAllLocksHang 故障点重写 killop.js
SERVER-27525 collation.js 应该使用测试专用的数据库
SERVER-27584将对过滤器的支持添加到 listDatabases
SERVER-27649使用$ regex 对$ elemMatch 进行序列化时不要出错
Write Operations
SERVER-24563将文档插入大小写不同的数据库时发生二级崩溃
Aggregation
SERVER-25535从管道目录中删除 injectExpressionContext()方法
SERVER-27288 DocumentSourceSkip 和 DocumentSourceMatch getNext()应该在后续的基础源 getNext()调用之前释放 GetNextResult 参考。
SERVER-27304创建 setParameter 以使所有需要合并的聚合选择主碎片作为合并
SERVER-27307 DocumentSourceCursor 应该将名称空间存储为 NamespaceString
SERVER-27406将 DocumentSourceCursor 批处理大小从 16MB 减少到 4MB
SERVER-27420聚合应显式解析 BSON 数组
SERVER-27527删除 M/R 和聚合中的数据库的显式 shardingEnabled 检查
Storage
SERVER-25286删除 drop2.js 对计数扫描 Yield 行为的依赖性
SERVER-27243在备份中升级到 3.4“创建集合”失败
SERVER-27256在 views_authz.js 中的分片配置中运行 getMore 测试
SERVER-27418 [琐碎]为 MongoRocks 启用 noPassthrough/index_version_v2.js 测试
SERVER-27512 queryable_mmapv1 可能遇到比默认页面大的块
SERVER-27591在 TTLMonitor 中解锁后需要放弃快照
WiredTiger
- SERVER-26545删除 WiredTiger 危险指针的固定大小限制
Operations
SERVER-26960尝试对视图进行$ natural 排序时,请考虑改进错误消息
SERVER-27289 Shell:mongo –host replSet/Host:Port 不再起作用
SERVER-27576 MongoDB 3.4'mongo'shell quit()无法正常工作
构建和包装
SERVER-27450将 i386 体系结构添加到 debian 和 ubuntu 的 repo config yaml 中。
Tools
TOOLS-1553预处理失败,显示“获取无效的文档大小”
TOOLS-1569 mongo-replay 在播放过程中崩溃
发生错误时TOOLS-1576 nil 指针取消引用
Internals
SERVER-24695 burn_in_tests.py 应该具有将测试和套件列入黑名单的机制,类似于 resmoke.py
SERVER-26308减少 Windows DEBUG 和 PPC 变体上与分片相关的套件的作业数量
SERVER-26525分解出相同的 jstest checkLog 函数并增加超时
SERVER-26806在动态初始同步传递中随机重新启动初始同步
SERVER-26860为兼容优先锁定策略添加更多单元测试
SERVER-27126在 burn_in_tests.py 脚本中删除对 mongodb-mongo-master Evergreen 项目的引用
SERVER-27175 Explain :: getPlanSummary 中的地址缓慢
SERVER-27208更新微基准以使用下一个 mongo-perf 版本
SERVER-27232 ASIO connpool 中的刷新和设置超时可能会使操作过早超时
SERVER-27306删除采用 std :: string 命名空间的 AutoGetCollection *方法
SERVER-27339 ReplSetTest 不应直接检查 TestData
SERVER-27343降低 sys-perf 运行的频率
SERVER-27350为 Evergreen 中的微基准启用访问控制
SERVER-27370如果调用/ isMaster 路由,则带有–rest segfaults 的 MongoDB 3.4.0
SERVER-27456微基准测试:增加 MemorySizeGB 和 oplogSize
SERVER-27459 dbtest 应该在全局初始化期间将 featureCompatibilityVersion 设置为最新值
SERVER-27568 mongo-perf:版本 2017-01
SERVER-27605减少 jsCore_small_oplog_rs_resync_static,jsCore_small_oplog_rs_initsync 和 jsCore_small_oplog_rs_initsync_static 的并发性
SERVER-27618降低 NetworkInterfaceASIO 压力测试的压力
SERVER-27653 burn_in_tests 中的黑名单并发套件
SERVER-27754使用请求代替 packager.py 中的 httplib2
TOOLS-1541支持导出视图
TOOLS-1549 –gssapiServiceName 在工具中不应要求–gssapiHostName
TOOLS-1559 TestCommandOpGetMoreLiveDB 在常绿环境中升级到 3.4 后失败
TOOLS-1579进度栏超过 100%
WT-283添加更改持久对象设置的方法
WT-2336通过文件系统调用监视添加测试以验证架构操作
WT-2402错误的结构访问导致未定义的行为
WT-2670读取完整的 DB 时 I/O 效率低(预读不良)
WT-2960插入数兆字节的值可能会导致病理后备使用
WT-2969压缩期间快照可能损坏
WT-3014为 ELF 符号可见性添加了 GCC/clang 支持。
WT-3021 Java 日志游标示例,Java 原始模式游标,原始模式下的日志游标需要修复
WT-3025修复 log_force_sync 中的错误路径
WT-3028所有脏页的工作负载可能会触发诊断卡住的检查
WT-3030测试失败,表明遍历期间无效的键 Sequences
WT-3034添加对单作者命名快照的支持。
WT-3037修复日志中一些过时的 Comments
WT-3048 WiredTiger 最大大小警告使用了错误的格式。
WT-3051删除外部__wt_hex 符号。
WT-3052如果索引提示错误,请改进搜索
WT-3053查看对内部 WiredTiger 函数的 Python 和 Java 调用
WT-3054 Java PackTest,PackTest03 无法编译
WT-3055 Java AsyncTest 错误
WT-3056对于带有投影的光标,应允许使用键
WT-3057 WiredTiger 危险指示器应使用 WT_REF,而不是 WT_PAGE。
WT-3061系统调用测试以 checkpoint_sync = false 运行,并且不确认 pwrite64
WT-3064小树清除:.gitignore,新闻拼写错误
WT-3066 lint
WT-3068运行 Jenkins 测试时复制 wtperf 工件
WT-3069修复 LevelDB API 中的构建失败
WT-3070修复索引光标的 search_near()
WT-3071 Java:使用-Werror = sign-conversion 修复构建
WT-3075记录并强制 WiredTiger 现在依赖于 Python 2.7
WT-3078修复重新配置测试中的挂起。
WT-3084解决 Coverity 资源泄漏投诉。
3.4.1 Changelog
Security
SERVER-27194如果启用身份验证时修改视图,则视图必须要求同时指定“ viewOn”和“ pipeline”
Sharding
SERVER-22657为旧版迁移块克隆程序添加不变式并编写单元测试
SERVER-26832为 shell 命令添加测试
SERVER-26849关机时应加入平衡器线程
SERVER-27071确保 config.version 文档无法复制到 config_version_rollback.js 中的辅助文件
SERVER-27078 ShardRegistry 初始化中的种族导致它不更新配置服务器连接字符串
SERVER-27102在 addShard 的开头强制重新加载 ShardRegistry,以确保已移除已删除的碎片的 ReplicaSetMonitor
SERVER-27215 MigrationChunkClonerSourceLegacy 中的一些不变量不适用于 Broadcast 多更新和多删除
Replication
SERVER-27024为新的 replSetStepDown 行为编写其他测试
动态初始同步传递中的SERVER-27092黑名单 apply_ops1.js
SERVER-27110在初始同步结束时清除 OplogBuffer
SERVER-27117在 nojournal,inmem 和 ephemeralForTest 变体中将 writeConcernMajorityJournalDefault 设置为 false
SERVER-27124禁止 readConcern:多数读取 pv0
SERVER-27164 oplog 应用期间在同一数据库上隐式创建多个集合时出现死锁
SERVER-27176提高命令 writeConcern 解析的性能
SERVER-27196将超时添加到 stepdown_needs_electable_secondary.js
SERVER-27206来自初始同步动态传递的涉及 MapReduce 的黑名单测试
SERVER-27214禁止在 stepdown_needs_electable_secondary.js 和 stepdown_needs_majority.js 中链接
Query
SERVER-27197代码 BSON 类型不应使用可识别排序规则的字符串比较器进行比较
SERVER-27200在 CodeWScope 类型的 BSON 元素中比较范围对象不应遵循排序规则
SERVER-27207通过 mongos 排序在视图中查找可能会错误地返回空结果集
SERVER-27300禁止使用非简单排序规则对 BSONType :: Symbol 进行索引
Aggregation
SERVER-27201 $ graphLookup 触发空指针取消引用
SERVER-27213两个$ match 阶段组合不正确,结果不正确。
Storage
SERVER-27203可查询的 WT 错误地读取了配置字符串
SERVER-27217允许在 YAML 配置文件中指定 nopreallocj
SERVER-27246使用 mmapv1 在不存在的数据库上运行带有 op 的 applyOps 将使 mongod 崩溃
WiredTiger
SERVER-26870有时即使删除了收集也不会删除收集数据文件
SERVER-27218 Mongo Shell 中没有正确显示建议使用 XFS 的启动警告
Operations
SERVER-27210 3.4.0 mongo shell 无法使用带有“ ssl = true”的 MongoURI 进行连接
SERVER-27271 roleInfo 命令引发 System.InvalidOperationException:重复的元素名称“角色”。
构建和包装
SERVER-17368使用 OpenSSL 文件创建 Windows SSL zip 文件
SERVER-27130将 mongo-rocks 切换到 3.4 版的 v3.4 分支
SERVER-27241无法将 pid 文件写入/var/run/mongodb/mongod.pid:无此类文件或目录
SERVER-27377动态版本应按需使用–no-可执行文件,而不仅仅是库
Tools
TOOLS-1498统计信息收集对播放性能有很大影响
TOOLS-1501添加选项以设置捕获缓冲区大小,以避免数据包丢失
TOOLS-1502播放文件包含完整的回复有效内容
TOOLS-1516 mongoreplay:记录过程中出现“ shortenreply”错误
TOOLS-1535添加测试以使用默认排序规则还原集合
TOOLS-1561在创建新的播放文件时出错时,mongoreplay 中的 nil 指针取消引用
Internals
SERVER-20447添加用于测试分布式锁定代码的并发工作负载
SERVER-26445 resmoke.py 的 LoggerPipe 线程可以长时间停止使用其管道的输出
SERVER-26940网络接口 ASIO 集成测试压力测试在 Windows 上打开了太多连接
SERVER-26981更新 mongo-perf
SERVER-27141在 3.4 分支上更新 perf.yml,system-perf.yml 和 longevity.yml
SERVER-27145来自单节点 mongod 的分片名称未在 getSerializedCluster 并发套件文件 cluster.js 中用作分片索引
SERVER-27171将运算符<<(bool)添加到 StringBuilderImpl
SERVER-27202回归运行后将 sys-perf 群集标记为空闲
SERVER-27223提高 Command :: parseNs()的效率
SERVER-27240后台线程处于活动状态时,ConnectBG 不得关闭()
SERVER-27275长寿将编译的 mongod 存档上传到与 sys-perf 不同的 URL
SERVER-27358 Socket :: connect 期望_timeout 字段以毫秒为单位
SERVER-27363打包脚本中的错字
SERVER-27388处理超出 NI 连接钩子的时间限制
TOOLS-1541支持导出视图
TOOLS-1558在 master 中使用 mongodb 3.4“当前”测试