Issue #1

0 up
0 down
Open
noosfero-plugins/gamification#1
Created by Leandro Santos (Edited )

Erro ao remove comunidade

Ao tentar remover uma comunidade com o plugin de gamificação ativo no console, mas não ativo no environment a comunidade não é removida.

Talvez o erro ocorra mesmo com o plugin ativo no environment

Segue log do erro

Expire fragment views/participa_ma/1.3~rc1/display_content_blocks/667-20151028205155-it 0.4ms [merit] no target found: Delayed::DeserializationError. /usr/local/rvm/gems/ruby-1.9.3-p551/gems/merit-2.3.2/lib/merit/base_target_finder.rb:13:in find' [merit] no target found: Delayed::DeserializationError. /usr/local/rvm/gems/ruby-1.9.3-p551/gems/merit-2.3.2/lib/merit/base_target_finder.rb:13:infind' [merit] no target found: Delayed::DeserializationError. /usr/local/rvm/gems/ruby-1.9.3-p551/gems/merit-2.3.2/lib/merit/base_target_finder.rb:13:in find' [merit] NoMethodError onTrueClass#author(called from Merit::TargetFinder#other_target) [merit] Couldn't find model to grant reputation to. Refer to https://github.com/tute/merit/issues/171#issuecomment-44185696. [merit] no target found: Delayed::DeserializationError. /usr/local/rvm/gems/ruby-1.9.3-p551/gems/merit-2.3.2/lib/merit/base_target_finder.rb:13:infind' Completed 500 Internal Server Error in 4143.7ms Rendered /usr/local/rvm/gems/ruby-1.9.3-p551/gems/exception_notification-4.0.1/lib/exception_notifier/views/exception_notifier/request.text.erb (1.9ms) Rendered /usr/local/rvm/gems/ruby-1.9.3-p551/gems/exception_notification-4.0.1/lib/exception_notifier/views/exception_notifier/title.text.erb (0.6ms) Rendered /usr/local/rvm/gems/ruby-1.9.3-p551/gems/exception_notification-4.0.1/lib/exception_notifier/views/exception_notifier/session.text.erb (2.2ms) Rendered /usr/local/rvm/gems/ruby-1.9.3-p551/gems/exceptionnotification-4.0.1/lib/exception_notifier/views/exceptionnotifier/title.text.erb (0.1ms) Rendered /usr/local/rvm/gems/ruby-1.9.3-p551/gems/exception_notification-4.0.1/lib/exception_notifier/views/exceptionnotifier/_environment.text.erb (3.7ms) Rendered /usr/local/rvm/gems/ruby-1.9.3-p551/gems/exceptionnotification-4.0.1/lib/exception_notifier/views/exception_notifier/title.text.erb (0.1ms) Rendered /usr/local/rvm/gems/ruby-1.9.3-p551/gems/exception_notification-4.0.1/lib/exception_notifier/views/exception_notifier/backtrace.text.erb (0.6ms) Rendered /usr/local/rvm/gems/ruby-1.9.3-p551/gems/exceptionnotification-4.0.1/lib/exceptionnotifier/views/exception_notifier/title.text.erb (0.1ms) Rendered /usr/local/rvm/gems/ruby-1.9.3-p551/gems/exception_notification-4.0.1/lib/exceptionnotifier/views/exception_notifier/exception_notification.text.erb (56.2ms)

Sent mail to participabr@serpro.gov.br (530.7ms)

NoMethodError (undefined method profile' for true:TrueClass): config/plugins/gamification/lib/merit/point_rules.rb:50:inblock in ' config/plugins/gamification/lib/merit/point_rules.rb:153:in call' config/plugins/gamification/lib/merit/point_rules.rb:153:inprofile_condition' config/plugins/gamification/lib/merit/point_rules.rb:178:in block (4 levels) in initialize' config/plugins/gamification/lib/merit_ext.rb:62:innew_merit_action' config/plugins/gamification/lib/merit_ext.rb:38:in block in has_merit_actions' app/controllers/my_profile/profile_editor_controller.rb:86:indestroy_profile' lib/authenticated_system.rb:10:in call' lib/authenticated_system.rb:10:inblock in included' lib/noosfero/scheduler/defer.rb:86:in `process_client'

Started GET "/assets/designs/themes/juventude/images/btn_entrar_login.png" for 177.184.139.82 at 2015-11-03 19:04:45 -0200 Served asset /designs/themes/juventude/images/btn_entrar_login.png - 200 OK (0ms) Started GET "/assets/plugins/display_content/javascripts/jstree/jquery.jstree-9acb282b4646e94bf14c0776953e1eb4.js" for 177.184.139.82 at 2015-11-03 19:05:13 -0200

Assignee: Hugo Melo
Milestone: None
2 participants
  • 5bf9bf341e9d00ebd854cdaf1a4299b2?s=40&d=identicon
    Leandro Santos @leandronunes

    Reassigned to @hugomelo

    Choose File ...   File name...
    Cancel
  • Cajon low quality2
    Hugo Melo @hugomelo (Edited )

    Esse erro acontece quando a gem Merit vai carregar um registro apagado a partir do campo target_data da tabela merit_actions. Nesse caso, é executado YAML.load. Veja o commit que adiciona essa feature (https://github.com/merit-gem/merit/commit/e6be375bbd2de872578a1abc3f130c477db5b1e7).

    A partir de um monkey patch do delayed_job (https://github.com/collectiveidea/delayed_job/issues/587) no YAML, registros ActiveRecord serializados passam a carregar o registro do banco e vez de desserializar o yaml como requisitado em YAML.load. Quando o registro não existe ele lança a exceção DeserializationError.

    Como definido com Victor:

    • Victor vai verificar a possibilidade de parar de usar o target_data como no commit acima
    • Hugo criar um MR que evita quebrar quando algum campo não puder ser carregado como nesse caso.
    Choose File ...   File name...
    Cancel
  • Cajon low quality2
    Hugo Melo @hugomelo
    Choose File ...   File name...
    Cancel