-
Notifications
You must be signed in to change notification settings - Fork 19
Replacing use_economic_representation
and use_milestone_years
migration script failing
#1222
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
Comments
As a workaround, removing the parameter value list before the migration solved the issue - but the script should be updated to do this also. |
OK, I spoke too soon... I then get the following error: ERROR: LoadError: UndefVarError: |
@nnhjy would you mind checking on this? since you developed this migration script. Thanks! |
Sure, I'll take it over. |
@DillonJ Please try the latest main branch to see whether this issue has been fixed~ |
@datejada I merged latest commits to test @Il-ara's improvements. The changes to the migration script are failing for my DB.
Describe the bug
Migration script is failing
To Reproduce
Execute the attached model in latest master with upgrade=true
Expected behavior
Clean migration
Model DB:
H2_IRL_AllScen.zip
Traceback as follows
Upgrading data structure to the latest version...
Replacing
use_economic_representation
anduse_milestone_years
by
multiyear_economic_discounting
...ERROR: LoadError: there's already a parameter_value_list with {'name': 'multiyear_economic_discounting_value_list'}
Stacktrace:
[1] error(s::String)
@ Base .\error.jl:35
[2] _process_db_answer(result::Nothing, err::String)
@ SpineInterface c:\workspace\Spine\SpineInterface\src\api\db.jl:789
[3] _process_db_answer(answer::Dict{String, Any})
@ SpineInterface c:\workspace\Spine\SpineInterface\src\api\db.jl:773
[4] _do_run_server_request(server_uri::URIs.URI, full_request::Vector{Any}; timeout::Float64)
@ SpineInterface c:\workspace\Spine\SpineInterface\src\api\db.jl:718
[5] _do_run_server_request
@ c:\workspace\Spine\SpineInterface\src\api\db.jl:692 [inlined]
[6] _run_server_request(server_uri::URIs.URI, request::String, args::Tuple{String}, kwargs::Dict{String, String})
@ SpineInterface c:\workspace\Spine\SpineInterface\src\api\db.jl:680
[7] #187
@ c:\workspace\Spine\SpineInterface\src\api\db.jl:527 [inlined]
[8] _db
@ c:\workspace\Spine\SpineInterface\src\api\db.jl:558 [inlined]
[9] #run_request#186
@ c:\workspace\Spine\SpineInterface\src\api\db.jl:526 [inlined]
[10] run_request
@ c:\workspace\Spine\SpineInterface\src\api\db.jl:525 [inlined]
[11] translate_use_economic_representation__use_milestone_years(db_url::URIs.URI, log_level::Int64)
@ SpineOpt c:\workspace\Spine\SpineOpt\src\data_structure\versions\translate_use_economic_representation__use_milestone_years.jl:33
[12] _run_migration(url::URIs.URI, version::Int64, log_level::Int64)
@ SpineOpt c:\workspace\Spine\SpineOpt\src\data_structure\migration.jl:117
[13] (::SpineOpt.var"#640#641"{Int64})(clean_url::URIs.URI)
@ SpineOpt c:\workspace\Spine\SpineOpt\src\data_structure\migration.jl:107
[14] (::SpineInterface.var"#181#182"{SpineOpt.var"#640#641"{Int64}})(db::URIs.URI)
@ SpineInterface c:\workspace\Spine\SpineInterface\src\api\db.jl:504
[15] _db(f::SpineInterface.var"#181#182"{SpineOpt.var"#640#641"{Int64}}, url::String; upgrade::Bool)
@ SpineInterface c:\workspace\Spine\SpineInterface\src\api\db.jl:545
[16] _db
@ c:\workspace\Spine\SpineInterface\src\api\db.jl:542 [inlined]
[17] without_filters
@ c:\workspace\Spine\SpineInterface\src\api\db.jl:499 [inlined]
[18] run_migrations
@ c:\workspace\Spine\SpineOpt\src\data_structure\migration.jl:106 [inlined]
[19] #_do_upgrade_db#91
@ c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:333 [inlined]
[20] _do_upgrade_db
@ c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:331 [inlined]
[21] _check_version(url_in::String; log_level::Int64, upgrade::Bool)
@ SpineOpt c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:325
[22] _check_version
@ c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:315 [inlined]
[23] prepare_spineopt(url_in::String; log_level::Int64, upgrade::Bool, filters::Dict{String, String}, templates::Tuple{}, mip_solver::Nothing, lp_solver::Nothing, use_direct_model::Bool, use_model_names::Bool, add_bridges::Bool)
@ SpineOpt c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:264
[24] prepare_spineopt
@ c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:251 [inlined]
[25] _run_spineopt(f::SpineOpt.var"#64#65", url_in::String, url_out::String; upgrade::Bool, filters::Dict{String, String}, templates::Tuple{}, mip_solver::Nothing, lp_solver::Nothing, use_direct_model::Bool, use_model_names::Bool, add_bridges::Bool, log_level::Int64, alternative::String, kwargs::@kwargs{optimize::Bool, update_names::Bool, write_as_roll::Int64, resume_file_path::Nothing})
@ SpineOpt c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:149
[26] _run_spineopt
@ c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:126 [inlined]
[27] #67
@ c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:104 [inlined]
[28] _log_to_file
@ c:\workspace\Spine\SpineOpt\src\util\misc.jl:246 [inlined]
[29] #run_spineopt#66
@ c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:103 [inlined]
[30] run_spineopt
@ c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:83 [inlined]
[31] #run_spineopt#63
@ c:\workspace\Spine\SpineOpt\src\run_spineopt.jl:67 [inlined]
[32] top-level scope
@ C:\Users\jodyd.spinetoolbox\work\run_spineopt_local__02ee85c6cd9e4273b1540667fe532431__toolbox\run_spineopt.jl:3
[33] include(fname::String)
@ Base.MainInclude .\client.jl:489
[34] top-level scope
@ none:1
in expression starting at C:\Users\jodyd.spinetoolbox\work\run_spineopt_local__02ee85c6cd9e4273b1540667fe532431__toolbox\run_spineopt.jl:3
julia>
The text was updated successfully, but these errors were encountered: