-
Notifications
You must be signed in to change notification settings - Fork 282
Refactor convert_input to Perform tasks via helper function
#3338
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor convert_input to Perform tasks via helper function
#3338
Conversation
Return from convert_input via a helper function Update corresponding test files and add tests to ensure do_conversions isn't affected by current applied changes Signed-off-by: Abhinav Pandey <abhinav.pandey.met22@itbhu.ac.in>
Signed-off-by: Abhinav Pandey <abhinav.pandey.met22@itbhu.ac.in>
base/db/R/convert_input.R
Outdated
| result_sizes <- checked.missing.files$result_sizes; | ||
| outlist <- checked.missing.files$outlist; | ||
| existing.input <- checked.missing.files$existing.input; | ||
| existing.dbfile <- checked.missing.files$existing.dbfile; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is their any other way to unwrap these variables in a single context line. For example, inheriting the above list and utilising the list$var syntax in-place. A lot of variable operations(assignment and reassignment) would consume extra memory in the heap. Should we also implement a Garbage Collection (gc()) or is it automatically applied in R ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rather than try to unwrap them in one line I'd consider whether they need to be assigned separate names at all -- e.g. can all places below that refer to result_sizes refer to checked.missing.files$result_sizes instead? If that's what you're suggesting by "utilising the list$var syntax in-place", then yes, I like that approach.
That said these objects are all very small and the runtime/memory overhead from reassignment will be negligible and R's reference-counting garbage collection will take care of the cleanup for us. Happily though, the same optimization gives (what I think is) a substantial improvement in code clarity, so I endorse it on those grounds.
Signed-off-by: Abhinav Pandey <abhinav.pandey.met22@itbhu.ac.in>
Signed-off-by: Abhinav Pandey <abhinav.pandey.met22@itbhu.ac.in>
Signed-off-by: Abhinav Pandey <abhinav.pandey.met22@itbhu.ac.in>
Signed-off-by: Abhinav Pandey <abhinav.pandey.met22@itbhu.ac.in>
Signed-off-by: Abhinav Pandey <abhinav.pandey.met22@itbhu.ac.in>
Signed-off-by: Abhinav Pandey <abhinav.pandey.met22@itbhu.ac.in>
This comment was marked as outdated.
This comment was marked as outdated.
Signed-off-by: Abhinav Pandey <abhinav.pandey.met22@itbhu.ac.in>
Signed-off-by: Abhinav Pandey <abhinav.pandey.met22@itbhu.ac.in>
… gsoc/convert-input Signed-off-by: Abhinav Pandey <abhinavpandey1230@gmail.com>
base/db/R/convert_input.R
Outdated
| } else { | ||
| PEcAn.logger::logger.warn("Input was not added to the database") | ||
| if(write) { | ||
| add_entries_result <- return (update_ensemble_writes(result, con, start_date, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
add_entries_result <- update_ensemble_writes( result, con, start_date, end_date, overwrite, insert.new.file, input.args, machine, mimetype, formatname )
return(add_entries_result)
The return values assigned here to a variable likely is a bug , this patch might fix this up .
99a0ec9
Description
Following changes were performed :
run.meta.analysisMotivation and Context
The main motive for these changes is to simplify convert_input by trying to break some of its components and branch it to other functions.
This PR may fix a task within #3307
Review Time Estimate
Types of changes
Checklist: