JuliaComputing / ScoringEngineDemo.jl

Demo of a scoring engine. From data wrangling to model serving on docker
Other
22 stars 4 forks source link

crashing while running in docker #1

Closed AbhimanyuAryan closed 2 years ago

AbhimanyuAryan commented 2 years ago

Docker container logs:

┌ Info: @__DIR__: 
└   #= /usr/src/app/bin/main.jl:1 =# @__DIR__ = "/usr/src/app/bin"
┌ Info: readdir(@__DIR__): 
│   readdir(#= /usr/src/app/bin/main.jl:2 =# @__DIR__()) =
│    3-element Vector{String}:
│     "fig"
│     "main.jl"
└     "report.html"
[ Info: Initializing packages
ERROR: LoadError: LoadError: UndefVarError: upsample_linear_wcn! not defined
Stacktrace:
  [1] getproperty(x::Module, f::Symbol)
    @ Base ./Base.jl:26
  [2] top-level scope
    @ ~/.julia/packages/NNlibCUDA/vECff/src/upsample.jl:118
  [3] include(mod::Module, _path::String)
    @ Base ./Base.jl:384
  [4] include(x::String)
    @ NNlibCUDA ~/.julia/packages/NNlibCUDA/vECff/src/NNlibCUDA.jl:1
  [5] top-level scope
    @ ~/.julia/packages/NNlibCUDA/vECff/src/NNlibCUDA.jl:9
  [6] include
    @ ./Base.jl:384 [inlined]
  [7] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String)
    @ Base ./loading.jl:1235
  [8] top-level scope
    @ none:1
  [9] eval
    @ ./boot.jl:360 [inlined]
 [10] eval(x::Expr)
    @ Base.MainInclude ./client.jl:446
 [11] top-level scope
    @ none:1
in expression starting at /root/.julia/packages/NNlibCUDA/vECff/src/upsample.jl:118
in expression starting at /root/.julia/packages/NNlibCUDA/vECff/src/NNlibCUDA.jl:1
ERROR: LoadError: LoadError: Failed to precompile NNlibCUDA [a00861dc-f156-4864-bf3c-e6376f28a68d] to /root/.julia/compiled/v1.6/NNlibCUDA/jl_uNHap1.
Stacktrace:
  [1] error(s::String)
    @ Base ./error.jl:33
  [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::Base.TTY, internal_stdout::Base.TTY, ignore_loaded_modules::Bool)
    @ Base ./loading.jl:1385
  [3] compilecache(pkg::Base.PkgId, path::String)
    @ Base ./loading.jl:1329
  [4] _require(pkg::Base.PkgId)
    @ Base ./loading.jl:1043
  [5] require(uuidkey::Base.PkgId)
    @ Base ./loading.jl:936
  [6] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:923
  [7] include(mod::Module, _path::String)
    @ Base ./Base.jl:384
  [8] include(x::String)
    @ Flux ~/.julia/packages/Flux/js6mP/src/Flux.jl:1
  [9] top-level scope
    @ ~/.julia/packages/Flux/js6mP/src/Flux.jl:62
 [10] include
    @ ./Base.jl:384 [inlined]
 [11] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String)
    @ Base ./loading.jl:1235
 [12] top-level scope
    @ none:1
 [13] eval
    @ ./boot.jl:360 [inlined]
 [14] eval(x::Expr)
    @ Base.MainInclude ./client.jl:446
 [15] top-level scope
    @ none:1
in expression starting at /root/.julia/packages/Flux/js6mP/src/cuda/cuda.jl:1
in expression starting at /root/.julia/packages/Flux/js6mP/src/Flux.jl:1
ERROR: LoadError: Failed to precompile Flux [587475ba-b771-5e3f-ad9e-33799f191a9c] to /root/.julia/compiled/v1.6/Flux/jl_CoQjmj.
Stacktrace:
  [1] error(s::String)
    @ Base ./error.jl:33
  [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::Base.TTY, internal_stdout::Base.TTY, ignore_loaded_modules::Bool)
    @ Base ./loading.jl:1385
  [3] compilecache(pkg::Base.PkgId, path::String)
    @ Base ./loading.jl:1329
  [4] _require(pkg::Base.PkgId)
    @ Base ./loading.jl:1043
  [5] require(uuidkey::Base.PkgId)
    @ Base ./loading.jl:936
  [6] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:923
  [7] include
    @ ./Base.jl:384 [inlined]
  [8] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String)
    @ Base ./loading.jl:1235
  [9] top-level scope
    @ none:1
 [10] eval
    @ ./boot.jl:360 [inlined]
 [11] eval(x::Expr)
    @ Base.MainInclude ./client.jl:446
 [12] top-level scope
    @ none:1
in expression starting at /usr/src/app/src/ScoringEngineDemo.jl:1
ERROR: LoadError: Failed to precompile ScoringEngineDemo [2e1be78e-94a1-43b6-9407-8099e760a385] to /root/.julia/compiled/v1.6/ScoringEngineDemo/jl_t8WHEf.
Stacktrace:
 [1] error(s::String)
   @ Base ./error.jl:33
 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::Base.TTY, internal_stdout::Base.TTY, ignore_loaded_modules::Bool)
   @ Base ./loading.jl:1385
 [3] compilecache(pkg::Base.PkgId, path::String)
   @ Base ./loading.jl:1329
 [4] _require(pkg::Base.PkgId)
   @ Base ./loading.jl:1043
 [5] require(uuidkey::Base.PkgId)
   @ Base ./loading.jl:936
 [6] require(into::Module, mod::Symbol)
   @ Base ./loading.jl:923
in expression starting at /usr/src/app/bin/main.jl:5
AbhimanyuAryan commented 2 years ago

@jeremiedb can you suggest what went wrong? From what I see precompilation errors with Flux and NNlibCUDA

AbhimanyuAryan commented 2 years ago

but able to run it offline without any issues :)

jeremiedb commented 2 years ago

@AbhimanyuAryan From the error message: ERROR: LoadError: LoadError: UndefVarError: upsample_linear_wcn! not defined, the issue seems related to bug from a recent NNlib update that has now been fixed: https://github.com/FluxML/NNlib.jl/issues/412

jeremiedb commented 2 years ago

I've cleanup the Dockerfiles and README instructions and merge into main branch. https://github.com/JuliaComputing/ScoringEngineDemo.jl/pull/3