代码之家  ›  专栏  ›  技术社区  ›  conny scipilot

rake失败,“虚拟计时器已过期”

  •  6
  • conny scipilot  · 技术社区  · 16 年前

    以下是我的环境:

    • 操作系统X 10.5
    • XCOD3.1.4
    • RVM 0.1.38
    • Ruby 1.8.9-p399(通过RVM)
    • Rails 2.3.8

    当Rake尝试运行我的测试时,我开始出现此错误:

    bash$ rake
    Virtual timer expired
    bash$  # End of output!
    

    并且启用跟踪:

    bash$ rake --trace
    ** Invoke default (first_time)
    ** Invoke test (first_time)
    ** Execute test
    ** Invoke test:units (first_time)
    ** Invoke db:test:prepare (first_time)
    ** Invoke db:abort_if_pending_migrations (first_time)
    ** Invoke environment (first_time)
    ** Execute environment
    ** Execute db:abort_if_pending_migrations
    ** Execute db:test:prepare
    ** Invoke db:test:load (first_time)
    ** Invoke db:test:purge (first_time)
    ** Invoke environment 
    ** Execute db:test:purge
    ** Execute db:test:load
    ** Invoke db:schema:load (first_time)
    ** Invoke environment 
    ** Execute db:schema:load
    Virtual timer expired
    bash$
    
    1 回复  |  直到 16 年前
        1
  •  15
  •   conny scipilot    16 年前

    看起来Ruby有问题, rev23993 causes Virtual Timer Expired when forking 从而触发 MySQL 宝石。

    实际的解决方法似乎是 将mysql gem从2.8.1降级 版本2.7:

    #environment.rb
    config.gem 'mysql', :version => '2.7'
    
    推荐文章