Level: Properly report world save timings

this wasn't including chunk unloading in the world save timings.
This commit is contained in:
Dylan K. Taylor
2019-04-18 19:39:23 +01:00
parent 9ca7c0c883
commit 1e5941c98c
2 changed files with 21 additions and 5 deletions

View File

@ -1158,11 +1158,16 @@ class Level implements ChunkManager, Metadatable{
}
public function saveChunks(){
foreach($this->chunks as $chunk){
if(($chunk->hasChanged() or count($chunk->getTiles()) > 0 or count($chunk->getSavableEntities()) > 0) and $chunk->isGenerated()){
$this->provider->saveChunk($chunk);
$chunk->setChanged(false);
$this->timings->syncChunkSaveTimer->startTiming();
try{
foreach($this->chunks as $chunk){
if(($chunk->hasChanged() or count($chunk->getTiles()) > 0 or count($chunk->getSavableEntities()) > 0) and $chunk->isGenerated()){
$this->provider->saveChunk($chunk);
$chunk->setChanged(false);
}
}
}finally{
$this->timings->syncChunkSaveTimer->stopTiming();
}
}
@ -2902,7 +2907,12 @@ class Level implements ChunkManager, Metadatable{
if($trySave and $this->getAutoSave() and $chunk->isGenerated()){
if($chunk->hasChanged() or count($chunk->getTiles()) > 0 or count($chunk->getSavableEntities()) > 0){
$this->provider->saveChunk($chunk);
$this->timings->syncChunkSaveTimer->startTiming();
try{
$this->provider->saveChunk($chunk);
}finally{
$this->timings->syncChunkSaveTimer->stopTiming();
}
}
}