mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-14 03:10:47 +00:00
Fix build with pcre 8.42
PR: 220613 Submitted by: adamw
This commit is contained in:
parent
a2aaecb8cb
commit
4ca94984e8
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=470357
@ -3,7 +3,7 @@
|
|||||||
PORTNAME= mongodb
|
PORTNAME= mongodb
|
||||||
DISTVERSIONPREFIX= r
|
DISTVERSIONPREFIX= r
|
||||||
DISTVERSION= 3.4.9
|
DISTVERSION= 3.4.9
|
||||||
PORTREVISION= 4
|
PORTREVISION= 5
|
||||||
CATEGORIES= databases net
|
CATEGORIES= databases net
|
||||||
MASTER_SITES= https://fastdl.mongodb.org/src/ \
|
MASTER_SITES= https://fastdl.mongodb.org/src/ \
|
||||||
http://fastdl.mongodb.org/src/ \
|
http://fastdl.mongodb.org/src/ \
|
||||||
|
305
databases/mongodb34/files/patch-pcre
Normal file
305
databases/mongodb34/files/patch-pcre
Normal file
@ -0,0 +1,305 @@
|
|||||||
|
From 218a7b1d4ea3d3b04a5f6f54c66640b3a15586b0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Steven Green <steven@greenius.co.uk>
|
||||||
|
Date: Tue, 22 Aug 2017 13:08:48 -0400
|
||||||
|
Subject: [PATCH] SERVER-30166 Replace string with explicit std::string.
|
||||||
|
Enables compulation when using --use-system-pcre which presusably used to do
|
||||||
|
'using std::string' in an earlier version of pcre
|
||||||
|
|
||||||
|
Closes #1167
|
||||||
|
|
||||||
|
Signed-off-by: Mark Benvenuto <mark.benvenuto@mongodb.com>
|
||||||
|
(cherry picked from commit b7cebf82bc5e5572308cc3a3fb958a825db91498)
|
||||||
|
---
|
||||||
|
src/mongo/db/dbwebserver.cpp | 1 +
|
||||||
|
src/mongo/db/matcher/expression_leaf.cpp | 4 ++--
|
||||||
|
src/mongo/db/repl/master_slave.cpp | 41 ++++++++++++++++----------------
|
||||||
|
src/mongo/shell/bench.cpp | 14 +++++------
|
||||||
|
src/mongo/util/net/miniwebserver.cpp | 1 +
|
||||||
|
5 files changed, 32 insertions(+), 29 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/mongo/db/dbwebserver.cpp b/src/mongo/db/dbwebserver.cpp
|
||||||
|
index b202e0500b9..50fa68a8176 100644
|
||||||
|
--- src/mongo/db/dbwebserver.cpp
|
||||||
|
+++ src/mongo/db/dbwebserver.cpp
|
||||||
|
@@ -65,6 +65,7 @@
|
||||||
|
namespace mongo {
|
||||||
|
|
||||||
|
using std::map;
|
||||||
|
+using std::string;
|
||||||
|
using std::stringstream;
|
||||||
|
using std::vector;
|
||||||
|
|
||||||
|
diff --git a/src/mongo/db/matcher/expression_leaf.cpp b/src/mongo/db/matcher/expression_leaf.cpp
|
||||||
|
index 33356317816..0bf8d8685bc 100644
|
||||||
|
--- src/mongo/db/matcher/expression_leaf.cpp
|
||||||
|
+++ src/mongo/db/matcher/expression_leaf.cpp
|
||||||
|
@@ -202,7 +202,7 @@ void ComparisonMatchExpression::debugString(StringBuilder& debug, int level) con
|
||||||
|
}
|
||||||
|
|
||||||
|
void ComparisonMatchExpression::serialize(BSONObjBuilder* out) const {
|
||||||
|
- string opString = "";
|
||||||
|
+ std::string opString = "";
|
||||||
|
switch (matchType()) {
|
||||||
|
case LT:
|
||||||
|
opString = "$lt";
|
||||||
|
@@ -886,7 +886,7 @@ void BitTestMatchExpression::debugString(StringBuilder& debug, int level) const
|
||||||
|
}
|
||||||
|
|
||||||
|
void BitTestMatchExpression::serialize(BSONObjBuilder* out) const {
|
||||||
|
- string opString = "";
|
||||||
|
+ std::string opString = "";
|
||||||
|
|
||||||
|
switch (matchType()) {
|
||||||
|
case BITS_ALL_SET:
|
||||||
|
diff --git a/src/mongo/db/repl/master_slave.cpp b/src/mongo/db/repl/master_slave.cpp
|
||||||
|
index 96cfe58efdc..6929d5be297 100644
|
||||||
|
--- src/mongo/db/repl/master_slave.cpp
|
||||||
|
+++ src/mongo/db/repl/master_slave.cpp
|
||||||
|
@@ -168,7 +168,7 @@ BSONObj ReplSource::jsobj() {
|
||||||
|
|
||||||
|
BSONObjBuilder dbsNextPassBuilder;
|
||||||
|
int n = 0;
|
||||||
|
- for (set<string>::iterator i = addDbNextPass.begin(); i != addDbNextPass.end(); i++) {
|
||||||
|
+ for (set<std::string>::iterator i = addDbNextPass.begin(); i != addDbNextPass.end(); i++) {
|
||||||
|
n++;
|
||||||
|
dbsNextPassBuilder.appendBool(*i, 1);
|
||||||
|
}
|
||||||
|
@@ -177,7 +177,8 @@ BSONObj ReplSource::jsobj() {
|
||||||
|
|
||||||
|
BSONObjBuilder incompleteCloneDbsBuilder;
|
||||||
|
n = 0;
|
||||||
|
- for (set<string>::iterator i = incompleteCloneDbs.begin(); i != incompleteCloneDbs.end(); i++) {
|
||||||
|
+ for (set<std::string>::iterator i = incompleteCloneDbs.begin(); i != incompleteCloneDbs.end();
|
||||||
|
+ i++) {
|
||||||
|
n++;
|
||||||
|
incompleteCloneDbsBuilder.appendBool(*i, 1);
|
||||||
|
}
|
||||||
|
@@ -188,7 +189,7 @@ BSONObj ReplSource::jsobj() {
|
||||||
|
}
|
||||||
|
|
||||||
|
void ReplSource::ensureMe(OperationContext* txn) {
|
||||||
|
- string myname = getHostName();
|
||||||
|
+ std::string myname = getHostName();
|
||||||
|
|
||||||
|
// local.me is an identifier for a server for getLastError w:2+
|
||||||
|
bool exists = Helpers::getSingleton(txn, "local.me", _me);
|
||||||
|
@@ -378,10 +379,10 @@ class HandshakeCmd : public Command {
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual bool run(OperationContext* txn,
|
||||||
|
- const string& ns,
|
||||||
|
+ const std::string& ns,
|
||||||
|
BSONObj& cmdObj,
|
||||||
|
int options,
|
||||||
|
- string& errmsg,
|
||||||
|
+ std::string& errmsg,
|
||||||
|
BSONObjBuilder& result) {
|
||||||
|
HandshakeArgs handshake;
|
||||||
|
Status status = handshake.initialize(cmdObj);
|
||||||
|
@@ -398,7 +399,7 @@ class HandshakeCmd : public Command {
|
||||||
|
} handshakeCmd;
|
||||||
|
|
||||||
|
bool replHandshake(DBClientConnection* conn, const OID& myRID) {
|
||||||
|
- string myname = getHostName();
|
||||||
|
+ std::string myname = getHostName();
|
||||||
|
|
||||||
|
BSONObjBuilder cmd;
|
||||||
|
cmd.append("handshake", myRID);
|
||||||
|
@@ -450,7 +451,7 @@ void ReplSource::forceResync(OperationContext* txn, const char* requester) {
|
||||||
|
BSONElement e = i.next();
|
||||||
|
if (e.eoo())
|
||||||
|
break;
|
||||||
|
- string name = e.embeddedObject().getField("name").valuestr();
|
||||||
|
+ std::string name = e.embeddedObject().getField("name").valuestr();
|
||||||
|
if (!e.embeddedObject().getBoolField("empty")) {
|
||||||
|
if (name != "local") {
|
||||||
|
if (only.empty() || only == name) {
|
||||||
|
@@ -481,7 +482,7 @@ Status ReplSource::_updateIfDoneWithInitialSync() {
|
||||||
|
return Status::OK();
|
||||||
|
}
|
||||||
|
|
||||||
|
-void ReplSource::resyncDrop(OperationContext* txn, const string& dbName) {
|
||||||
|
+void ReplSource::resyncDrop(OperationContext* txn, const std::string& dbName) {
|
||||||
|
log() << "resync: dropping database " << dbName;
|
||||||
|
invariant(txn->lockState()->isW());
|
||||||
|
|
||||||
|
@@ -531,13 +532,13 @@ void ReplSource::resync(OperationContext* txn, const std::string& dbName) {
|
||||||
|
|
||||||
|
static DatabaseIgnorer ___databaseIgnorer;
|
||||||
|
|
||||||
|
-void DatabaseIgnorer::doIgnoreUntilAfter(const string& db, const Timestamp& futureOplogTime) {
|
||||||
|
+void DatabaseIgnorer::doIgnoreUntilAfter(const std::string& db, const Timestamp& futureOplogTime) {
|
||||||
|
if (futureOplogTime > _ignores[db]) {
|
||||||
|
_ignores[db] = futureOplogTime;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
-bool DatabaseIgnorer::ignoreAt(const string& db, const Timestamp& currentOplogTime) {
|
||||||
|
+bool DatabaseIgnorer::ignoreAt(const std::string& db, const Timestamp& currentOplogTime) {
|
||||||
|
if (_ignores[db].isNull()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
@@ -627,7 +628,7 @@ bool ReplSource::handleDuplicateDbName(OperationContext* txn,
|
||||||
|
|
||||||
|
// The database is present on the master and no conflicting databases
|
||||||
|
// are present on the master. Drop any local conflicts.
|
||||||
|
- for (set<string>::const_iterator i = duplicates.begin(); i != duplicates.end(); ++i) {
|
||||||
|
+ for (set<std::string>::const_iterator i = duplicates.begin(); i != duplicates.end(); ++i) {
|
||||||
|
___databaseIgnorer.doIgnoreUntilAfter(*i, lastTime);
|
||||||
|
incompleteCloneDbs.erase(*i);
|
||||||
|
addDbNextPass.erase(*i);
|
||||||
|
@@ -822,10 +823,10 @@ void ReplSource::_sync_pullOpLog_applyOperation(OperationContext* txn,
|
||||||
|
}
|
||||||
|
|
||||||
|
void ReplSource::syncToTailOfRemoteLog() {
|
||||||
|
- string _ns = ns();
|
||||||
|
+ std::string _ns = ns();
|
||||||
|
BSONObjBuilder b;
|
||||||
|
if (!only.empty()) {
|
||||||
|
- b.appendRegex("ns", string("^") + pcrecpp::RE::QuoteMeta(only));
|
||||||
|
+ b.appendRegex("ns", std::string("^") + pcrecpp::RE::QuoteMeta(only));
|
||||||
|
}
|
||||||
|
BSONObj last = oplogReader.findOne(_ns.c_str(), Query(b.done()).sort(BSON("$natural" << -1)));
|
||||||
|
if (!last.isEmpty()) {
|
||||||
|
@@ -873,7 +874,7 @@ class ReplApplyBatchSize
|
||||||
|
*/
|
||||||
|
int ReplSource::_sync_pullOpLog(OperationContext* txn, int& nApplied) {
|
||||||
|
int okResultCode = restartSyncAfterSleep;
|
||||||
|
- string ns = string("local.oplog.$") + sourceName();
|
||||||
|
+ std::string ns = std::string("local.oplog.$") + sourceName();
|
||||||
|
LOG(2) << "sync_pullOpLog " << ns << " syncedTo:" << syncedTo.toStringLong() << '\n';
|
||||||
|
|
||||||
|
bool tailing = true;
|
||||||
|
@@ -893,7 +894,7 @@ int ReplSource::_sync_pullOpLog(OperationContext* txn, int& nApplied) {
|
||||||
|
BSONElement e = i.next();
|
||||||
|
if (e.eoo())
|
||||||
|
break;
|
||||||
|
- string name = e.embeddedObject().getField("name").valuestr();
|
||||||
|
+ std::string name = e.embeddedObject().getField("name").valuestr();
|
||||||
|
if (!e.embeddedObject().getBoolField("empty")) {
|
||||||
|
if (name != "local") {
|
||||||
|
if (only.empty() || only == name) {
|
||||||
|
@@ -917,7 +918,7 @@ int ReplSource::_sync_pullOpLog(OperationContext* txn, int& nApplied) {
|
||||||
|
if (!only.empty()) {
|
||||||
|
// note we may here skip a LOT of data table scanning, a lot of work for the master.
|
||||||
|
// maybe append "\\." here?
|
||||||
|
- query.appendRegex("ns", string("^") + pcrecpp::RE::QuoteMeta(only));
|
||||||
|
+ query.appendRegex("ns", std::string("^") + pcrecpp::RE::QuoteMeta(only));
|
||||||
|
}
|
||||||
|
BSONObj queryObj = query.done();
|
||||||
|
// e.g. queryObj = { ts: { $gte: syncedTo } }
|
||||||
|
@@ -936,7 +937,7 @@ int ReplSource::_sync_pullOpLog(OperationContext* txn, int& nApplied) {
|
||||||
|
|
||||||
|
// show any deferred database creates from a previous pass
|
||||||
|
{
|
||||||
|
- set<string>::iterator i = addDbNextPass.begin();
|
||||||
|
+ set<std::string>::iterator i = addDbNextPass.begin();
|
||||||
|
if (i != addDbNextPass.end()) {
|
||||||
|
BSONObjBuilder b;
|
||||||
|
b.append("ns", *i + '.');
|
||||||
|
@@ -980,7 +981,7 @@ int ReplSource::_sync_pullOpLog(OperationContext* txn, int& nApplied) {
|
||||||
|
BSONObj op = oplogReader.nextSafe();
|
||||||
|
BSONElement ts = op.getField("ts");
|
||||||
|
if (ts.type() != Date && ts.type() != bsonTimestamp) {
|
||||||
|
- string err = op.getStringField("$err");
|
||||||
|
+ std::string err = op.getStringField("$err");
|
||||||
|
if (!err.empty()) {
|
||||||
|
// 13051 is "tailable cursor requested on non capped collection"
|
||||||
|
if (op.getIntField("code") == 13051) {
|
||||||
|
@@ -1148,7 +1149,7 @@ int ReplSource::sync(OperationContext* txn, int& nApplied) {
|
||||||
|
|
||||||
|
// FIXME Handle cases where this db isn't on default port, or default port is spec'd in
|
||||||
|
// hostName.
|
||||||
|
- if ((string("localhost") == hostName || string("127.0.0.1") == hostName) &&
|
||||||
|
+ if ((std::string("localhost") == hostName || std::string("127.0.0.1") == hostName) &&
|
||||||
|
serverGlobalParams.port == ServerGlobalParams::DefaultDBPort) {
|
||||||
|
log() << "can't sync from self (localhost). sources configuration may be wrong." << endl;
|
||||||
|
sleepsecs(5);
|
||||||
|
@@ -1293,7 +1294,7 @@ static void replMain(OperationContext* txn) {
|
||||||
|
if (s) {
|
||||||
|
stringstream ss;
|
||||||
|
ss << "sleep " << s << " sec before next pass";
|
||||||
|
- string msg = ss.str();
|
||||||
|
+ std::string msg = ss.str();
|
||||||
|
if (!serverGlobalParams.quiet)
|
||||||
|
log() << msg << endl;
|
||||||
|
ReplInfo r(msg.c_str());
|
||||||
|
diff --git a/src/mongo/shell/bench.cpp b/src/mongo/shell/bench.cpp
|
||||||
|
index 040002f5c6e..338477ebe56 100644
|
||||||
|
--- src/mongo/shell/bench.cpp
|
||||||
|
+++ src/mongo/shell/bench.cpp
|
||||||
|
@@ -674,7 +674,7 @@ void BenchRunWorker::generateLoadOnConnection(DBClientBase* conn) {
|
||||||
|
invariant(bsonTemplateEvaluator.setId(_id) == BsonTemplateEvaluator::StatusSuccess);
|
||||||
|
|
||||||
|
if (_config->username != "") {
|
||||||
|
- string errmsg;
|
||||||
|
+ std::string errmsg;
|
||||||
|
if (!conn->auth("admin", _config->username, _config->password, errmsg)) {
|
||||||
|
uasserted(15931, "Authenticating to connection for _benchThread failed: " + errmsg);
|
||||||
|
}
|
||||||
|
@@ -918,7 +918,7 @@ void BenchRunWorker::generateLoadOnConnection(DBClientBase* conn) {
|
||||||
|
|
||||||
|
if (!result["err"].eoo() && result["err"].type() == String &&
|
||||||
|
(_config->throwGLE || op.throwGLE))
|
||||||
|
- throw DBException((string) "From benchRun GLE" +
|
||||||
|
+ throw DBException((std::string) "From benchRun GLE" +
|
||||||
|
causedBy(result["err"].String()),
|
||||||
|
result["code"].eoo() ? 0 : result["code"].Int());
|
||||||
|
}
|
||||||
|
@@ -984,7 +984,7 @@ void BenchRunWorker::generateLoadOnConnection(DBClientBase* conn) {
|
||||||
|
|
||||||
|
if (!result["err"].eoo() && result["err"].type() == String &&
|
||||||
|
(_config->throwGLE || op.throwGLE))
|
||||||
|
- throw DBException((string) "From benchRun GLE" +
|
||||||
|
+ throw DBException((std::string) "From benchRun GLE" +
|
||||||
|
causedBy(result["err"].String()),
|
||||||
|
result["code"].eoo() ? 0 : result["code"].Int());
|
||||||
|
}
|
||||||
|
@@ -1031,7 +1031,7 @@ void BenchRunWorker::generateLoadOnConnection(DBClientBase* conn) {
|
||||||
|
|
||||||
|
if (!result["err"].eoo() && result["err"].type() == String &&
|
||||||
|
(_config->throwGLE || op.throwGLE))
|
||||||
|
- throw DBException((string) "From benchRun GLE " +
|
||||||
|
+ throw DBException((std::string) "From benchRun GLE " +
|
||||||
|
causedBy(result["err"].String()),
|
||||||
|
result["code"].eoo() ? 0 : result["code"].Int());
|
||||||
|
}
|
||||||
|
@@ -1133,7 +1133,7 @@ void BenchRunWorker::run() {
|
||||||
|
try {
|
||||||
|
std::unique_ptr<DBClientBase> conn(_config->createConnection());
|
||||||
|
if (!_config->username.empty()) {
|
||||||
|
- string errmsg;
|
||||||
|
+ std::string errmsg;
|
||||||
|
if (!conn->auth("admin", _config->username, _config->password, errmsg)) {
|
||||||
|
uasserted(15932, "Authenticating to connection for benchThread failed: " + errmsg);
|
||||||
|
}
|
||||||
|
@@ -1165,7 +1165,7 @@ void BenchRunner::start() {
|
||||||
|
std::unique_ptr<DBClientBase> conn(_config->createConnection());
|
||||||
|
// Must authenticate to admin db in order to run serverStatus command
|
||||||
|
if (_config->username != "") {
|
||||||
|
- string errmsg;
|
||||||
|
+ std::string errmsg;
|
||||||
|
if (!conn->auth("admin", _config->username, _config->password, errmsg)) {
|
||||||
|
uasserted(
|
||||||
|
16704,
|
||||||
|
@@ -1201,7 +1201,7 @@ void BenchRunner::stop() {
|
||||||
|
{
|
||||||
|
std::unique_ptr<DBClientBase> conn(_config->createConnection());
|
||||||
|
if (_config->username != "") {
|
||||||
|
- string errmsg;
|
||||||
|
+ std::string errmsg;
|
||||||
|
// this can only fail if admin access was revoked since start of run
|
||||||
|
if (!conn->auth("admin", _config->username, _config->password, errmsg)) {
|
||||||
|
uasserted(
|
||||||
|
diff --git a/src/mongo/util/net/miniwebserver.cpp b/src/mongo/util/net/miniwebserver.cpp
|
||||||
|
index 5f4165d42f4..9fe847168ee 100644
|
||||||
|
--- src/mongo/util/net/miniwebserver.cpp
|
||||||
|
+++ src/mongo/util/net/miniwebserver.cpp
|
||||||
|
@@ -45,6 +45,7 @@
|
||||||
|
namespace mongo {
|
||||||
|
|
||||||
|
using std::shared_ptr;
|
||||||
|
+using std::string;
|
||||||
|
using std::stringstream;
|
||||||
|
using std::vector;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user