Skip to content
Snippets Groups Projects
Commit cda6acbc authored by sveseli's avatar sveseli
Browse files

performance improvements for upload: introduced timer for preparing upload files

parent 1b87c3ee
No related branches found
No related tags found
No related merge requests found
...@@ -18,7 +18,7 @@ class UploadInfo(DmObject): ...@@ -18,7 +18,7 @@ class UploadInfo(DmObject):
if uploadStatus == 'done': if uploadStatus == 'done':
return return
fileDict = self.get('fileDict') fileDict = self.get('fileDict')
nFiles = len(fileDict) nFiles = self.get('nFiles', len(fileDict))
nProcessedFiles = 0 nProcessedFiles = 0
nProcessingErrors = 0 nProcessingErrors = 0
processingErrors = {} processingErrors = {}
...@@ -51,7 +51,7 @@ class UploadInfo(DmObject): ...@@ -51,7 +51,7 @@ class UploadInfo(DmObject):
self['status'] = uploadStatus self['status'] = uploadStatus
self['nProcessedFiles'] = '%s' % (nProcessedFiles) self['nProcessedFiles'] = '%s' % (nProcessedFiles)
self['nProcessingErrors'] = '%s' % (nProcessingErrors) self['nProcessingErrors'] = '%s' % (nProcessingErrors)
self['nFiles'] = '%s' % (nFiles) #self['nFiles'] = '%s' % (nFiles)
percentageComplete = 100.0 percentageComplete = 100.0
percentageProcessed = 100.0 percentageProcessed = 100.0
......
...@@ -103,17 +103,21 @@ class ExperimentSessionControllerImpl(DmObjectManager): ...@@ -103,17 +103,21 @@ class ExperimentSessionControllerImpl(DmObjectManager):
def prepareUpload(self, uploadInfo, daqInfo, experiment, filePathsDict): def prepareUpload(self, uploadInfo, daqInfo, experiment, filePathsDict):
uploadId = uploadInfo.get('id') uploadId = uploadInfo.get('id')
self.logger.debug('Preparing upload id: %s', uploadId) self.logger.debug('Preparing upload id: %s' % uploadId)
fileDict = uploadInfo.get('fileDict') fileDict = uploadInfo.get('fileDict')
dataDirectory = uploadInfo.get('dataDirectory') dataDirectory = uploadInfo.get('dataDirectory')
fileProcessingManager = FileProcessingManager.getInstance()
for filePath in filePathsDict.keys(): for filePath in filePathsDict.keys():
fileInfo = ObservedFile(filePath=filePath, dataDirectory=dataDirectory, experiment=experiment) fileInfo = ObservedFile(filePath=filePath, dataDirectory=dataDirectory, experiment=experiment)
fileInfo['daqInfo'] = daqInfo fileInfo['daqInfo'] = daqInfo
fileInfo['uploadId'] = uploadId fileInfo['uploadId'] = uploadId
fileUploadInfo = { 'processed' : False } fileUploadInfo = { 'processed' : False }
fileDict[filePath] = fileUploadInfo fileDict[filePath] = fileUploadInfo
fileProcessingManager.processFile(fileInfo) try:
self.logger.debug('Done preparing upload id: %s', uploadId) fileProcessingManager.processFile(fileInfo)
except Exception, ex:
self.logger.error('Processing error: %s', ex)
self.logger.debug('Done preparing upload id: %s (total of %s files)' % (uploadId, len(filePathsDict)))
def getUploadInfo(self, id, includeFileDetails=False): def getUploadInfo(self, id, includeFileDetails=False):
uploadInfo = UploadTracker.getInstance().get(id) uploadInfo = UploadTracker.getInstance().get(id)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment