summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormguetlein <martin.guetlein@gmail.com>2012-03-02 17:09:09 +0100
committermguetlein <martin.guetlein@gmail.com>2012-03-02 17:09:09 +0100
commite3da22ccc8aa7c7f808b5ebf3d3a1539d59eade0 (patch)
tree0338d2baf81c451cae1a756a3e072152d3656c62
parentc019ecedcb54e0ccbfebcf6901b3007d1e24ba1d (diff)
fix: do not always delete feature datasets in loo-cv
-rwxr-xr-xvalidation/validation_application.rb2
-rwxr-xr-xvalidation/validation_service.rb16
2 files changed, 10 insertions, 8 deletions
diff --git a/validation/validation_application.rb b/validation/validation_application.rb
index b07e814..b29b7ff 100755
--- a/validation/validation_application.rb
+++ b/validation/validation_application.rb
@@ -97,7 +97,7 @@ post '/crossvalidation/loo/?' do
cv.perform_cv( params[:prediction_feature], params[:algorithm_params], OpenTox::SubTask.create(task,0,95))
# computation of stats is cheap as dataset are already loaded into the memory
Validation::Validation.from_cv_statistics( cv.id, @subjectid, OpenTox::SubTask.create(task,95,100) )
- cv.clean_loo_files
+ cv.clean_loo_files( !(params[:algorithm_params] && params[:algorithm_params] =~ /feature_dataset_uri/) )
cv.crossvalidation_uri
end
return_task(task)
diff --git a/validation/validation_service.rb b/validation/validation_service.rb
index 527e5ca..c6a0299 100755
--- a/validation/validation_service.rb
+++ b/validation/validation_service.rb
@@ -305,17 +305,19 @@ module Validation
perform_cv_validations( algorithm_params, OpenTox::SubTask.create(task, 33, 100) )
end
- def clean_loo_files
+ def clean_loo_files( delete_feature_datasets )
Validation.find( :crossvalidation_id => self.id, :validation_type => "crossvalidation" ).each do |v|
LOGGER.debug "loo-cleanup> delete training dataset "+v.training_dataset_uri
OpenTox::RestClientWrapper.delete v.training_dataset_uri,subjectid
- begin
- model = OpenTox::Model::Generic.find(v.model_uri)
- if model.metadata[OT.featureDataset]
- LOGGER.debug "loo-cleanup> delete feature dataset "+model.metadata[OT.featureDataset]
- OpenTox::RestClientWrapper.delete model.metadata[OT.featureDataset],subjectid
+ if (delete_feature_datasets)
+ begin
+ model = OpenTox::Model::Generic.find(v.model_uri)
+ if model.metadata[OT.featureDataset]
+ LOGGER.debug "loo-cleanup> delete feature dataset "+model.metadata[OT.featureDataset]
+ OpenTox::RestClientWrapper.delete model.metadata[OT.featureDataset],subjectid
+ end
+ rescue
end
- rescue
end
end
end