(resync) Merge branch 'clang-profile-build' into testing

This commit is contained in:
DarthArgus
2016-12-21 07:25:54 +00:00
11 changed files with 47 additions and 59 deletions
@@ -34,14 +34,14 @@ void ConfigServerDatabase::install(void)
ConfigServerUtility::install();
data = &staticData;
KEY_INT (objvarNameCleanupTime, 0);
KEY_INT (orphanedObjectCleanupTime, 0);
KEY_INT (marketAttributesCleanupTime, 0);
KEY_INT (messagesCleanupTime, 0);
KEY_INT (brokenObjectCleanupTime, 0);
KEY_INT (vendorObjectCleanupTime, 0);
KEY_INT (objvarNameCleanupTime, 60);
KEY_INT (orphanedObjectCleanupTime, 60);
KEY_INT (marketAttributesCleanupTime, 60);
KEY_INT (messagesCleanupTime, 60);
KEY_INT (brokenObjectCleanupTime, 60);
KEY_INT (vendorObjectCleanupTime, 60);
KEY_STRING (customSQLFilename,"");
KEY_BOOL (enableFixBadCells, false);
KEY_BOOL (enableFixBadCells, true);
KEY_STRING (objectTemplateListUpdateFilename,"");
KEY_STRING (DSN,"gameserver");
@@ -97,7 +97,7 @@ void ConfigServerDatabase::install(void)
KEY_BOOL (enableGoldDatabase, false);
KEY_STRING (maxGoldNetworkId, "10000000");
KEY_FLOAT (defaultQueueUpdateTimeLimit, 0.25f);
KEY_BOOL (enableDataCleanup, false);
KEY_BOOL (enableDataCleanup, true);
KEY_INT (defaultLazyDeleteBulkBindSize, 100);
KEY_INT (defaultLazyDeleteSleepTime, 1000);
KEY_INT (writeDelay, 0);
@@ -230,7 +230,7 @@ void Persister::onFrameBarrierReached()
for (ObjectSnapshotMap::iterator obj=m_objectSnapshotMap.begin(); obj!=m_objectSnapshotMap.end();)
{
if (obj->second == i->second)
m_objectSnapshotMap.erase(obj++);
obj = m_objectSnapshotMap.erase(obj);
else
++obj;
}
@@ -643,7 +643,11 @@ void GameServer::connectToDatabaseProcess(std::string const &address, uint16 por
void GameServer::createRemoteProxy(uint32 remoteProcessId, ServerObject *object)
{
WARNING_STRICT_FATAL(!object, ("Told to create an object on %d we know nothing about!\n", remoteProcessId));
if (!object) {
WARNING(!object, ("Told to create an object on %d we know nothing about!\n", remoteProcessId));
return;
}
NetworkId objectId = object->getNetworkId();
DEBUG_REPORT_LOG(ConfigServerGame::getLogObjectLoading(),("createRemoteProxy(%lu,%s)\n",remoteProcessId, objectId.getValueString().c_str()));
@@ -405,7 +405,7 @@ void IntangibleObject::onPermanentlyDestroyed()
* Persists this object in the database. Will also persist all the objects it
* is keeping track of.
*/
bool IntangibleObject::persist()
void IntangibleObject::persist()
{
if (isAuthoritative() && isTheater())
{
@@ -413,11 +413,11 @@ bool IntangibleObject::persist()
{
// we are not finished creating our objects, prevent persistance
WARNING(true, ("IntangibleObject::persist called before all objects created"));
return false;
return;
}
if (isPersisted())
return true;
return;
ServerObject::persist();
@@ -471,15 +471,9 @@ bool IntangibleObject::persist()
}
}
return true;
}
else {
else
ServerObject::persist();
return true;
}
return false;
} // IntangibleObject::persist
//------------------------------------------------------------------------------------------
@@ -44,7 +44,7 @@ public:
virtual float alter(float time);
virtual void onPermanentlyDestroyed();
virtual bool persist();
virtual void persist();
virtual bool isVisibleOnClient (const Client & client) const;
virtual void getAttributes (std::vector<std::pair<std::string, Unicode::String> > &data) const;
virtual bool onContainerAboutToTransfer(ServerObject * destination, ServerObject* transferer);
@@ -3203,11 +3203,11 @@ void ServerObject::onRemovedFromTriggerVolume(TriggerVolume & triggerVolume)
* After this function is called, changes to this object will be sent to the database.
*/
bool ServerObject::persist()
void ServerObject::persist()
{
// Do not persist buildout objects (buildout objects have negative networkIds)
if (getNetworkId() < NetworkId::cms_invalid)
return false;
return;
if (isAuthoritative())
{
@@ -3221,7 +3221,7 @@ bool ServerObject::persist()
if (!contained && !isPlayerControlled() && getPosition_p() != Vector::zero)
{
WARNING_STRICT_FATAL(true, ("Tried to persist non-player object %s in a space scene away from the origin (not persisting).", getDebugInformation().c_str()));
return false;
return;
}
}
else
@@ -3244,15 +3244,11 @@ bool ServerObject::persist()
PositionUpdateTracker::sendPositionUpdate(*this);
}
return true;
}
else
{
sendControllerMessageToAuthServer(CM_persistObject, 0);
}
return false;
}
// ----------------------------------------------------------------------
@@ -297,7 +297,7 @@ public:
bool isInEndBaselines() const;
bool isNeedingPobFixup() const;
bool permanentlyDestroy (DeleteReasons::Enumerator reason);
virtual bool persist ();
virtual void persist ();
virtual void onRemovingFromWorld ();
virtual void unload ();
void moveToPlayerAndUnload (const NetworkId &player);
@@ -514,15 +514,16 @@ ServerObject * ScriptMethodsDynamicVariableNamespace::getObjectAndName(JNIEnv *e
JavaStringParam localName(name);
if (localName.fillBuffer(buffer, bufferSize) > 1)
{
if (!JavaLibrary::getObject(objId, object) && !ConfigServerGame::getDisableObjvarNullCheck())
if (!JavaLibrary::getObject(objId, object))
{
fprintf(stderr, "WARNING: Could not get object for objvar %s call\n", buffer);
WARNING((!ConfigServerGame::getDisableObjvarNullCheck()), ("WARNING: Could not get object for objvar %s call\n", buffer));
}
}
else
{
fprintf(stderr, "WARNING: Could not get objvar name\n");
WARNING(true, ("Could not get objvar name."));
}
if (object == nullptr && !ConfigServerGame::getDisableObjvarNullCheck())
JavaLibrary::printJavaStack();
@@ -1125,11 +1125,8 @@ jboolean JNICALL ScriptMethodsObjectCreateNamespace::persistObject(JNIEnv *env,
ServerObject* object = nullptr;
if (!JavaLibrary::getObject(target, object))
return JNI_FALSE;
if (object->persist()) {
return JNI_TRUE;
} else {
return JNI_FALSE;
}
object->persist();
return JNI_TRUE;
} // JavaLibrary::persistObject
/**
@@ -3367,38 +3367,38 @@ void JNICALL ScriptMethodsObjectInfoNamespace::sendScriptVarsToProxies(JNIEnv *
{
PROFILER_AUTO_BLOCK_DEFINE("JNI::sendScriptVarsToProxies");
ServerObject * object = 0;
if (obj != 0 && buffer != 0)
{
ServerObject *object = nullptr;
if (JavaLibrary::getObject(obj, object) && object != nullptr)
if (JavaLibrary::getObject(obj, object))
{
ProxyList proxyList(object->getExposedProxyList());
ProxyList const &proxyList = object->getExposedProxyList();
if (!proxyList.empty())
{
std::vector<int8> data;
if (ScriptConversion::convert(buffer, data))
std::vector<int8> data;
if (ScriptConversion::convert(buffer, data))
{
if(data.size() > 0)
{
if(data.size() > 0)
{
WARNING(data.size() > 60000, ("JavaLibrary::sendScriptVarsToProxies: "
"Packing scriptvars for object %s, packed data size = %d",
WARNING(data.size() > 60000, ("JavaLibrary::sendScriptVarsToProxies: "
"Packing scriptvars for object %s, packed data size = %d",
object->getNetworkId().getValueString().c_str(),
static_cast<int>(data.size())));
uint32 const myProcessId = GameServer::getInstance().getProcessId();
uint32 const authProcessId = object->getAuthServerProcessId();
ProxyList syncServers(proxyList);
if (myProcessId != authProcessId)
{
proxyList.erase(myProcessId);
proxyList.insert(authProcessId);
syncServers.erase(myProcessId);
syncServers.insert(authProcessId);
}
ServerMessageForwarding::begin(std::vector<uint32>(proxyList.begin(), proxyList.end()));
ServerMessageForwarding::begin(std::vector<uint32>(syncServers.begin(), syncServers.end()));
SynchronizeScriptVarDeltasMessage const deltasMessage(object->getNetworkId(), data);
ServerMessageForwarding::send(deltasMessage);
ServerMessageForwarding::end();
}
}
@@ -325,12 +325,8 @@ ObjvarBuffer::updateObjvars(const NetworkId &objectId, const std::vector <Dynami
void ObjvarBuffer::removeObject(const NetworkId &object) {
DataType::iterator i = m_data.lower_bound(IndexKey(object, 0));
while (i != m_data.end()) {
if (i->first.m_objectId == object) {
i = m_data.erase(i);
} else {
++i;
}
while (i != m_data.end() && i->first.m_objectId==object) {
i = m_data.erase(i);
}
}