小编WYi*_*WYi的帖子

将Rails 3.1项目部署到Heroku时出现问题:无法找到JavaScript运行时

我无法将rails 3.1 beta项目部署到heroku.问题发生在数据库迁移步骤中.我跑的时候:

heroku rake db:migrate
Run Code Online (Sandbox Code Playgroud)

我收到错误消息:

> rake aborted! 

> Could not find a JavaScript runtime. See
> https://github.com/sstephenson/execjs
> for a list of available runtimes.

> /app/Rakefile:5 

> (See full trace by running task with --trace) 

> (in /app)

但我可以在本地成功运行应用程序,并且我确实安装了nodejs.知道为什么吗?

在这里我的宝石列表:

abstract (1.0.0)
actionmailer (3.1.0.beta1)
actionpack (3.1.0.beta1, 3.0.7)
activemodel (3.1.0.beta1, 3.0.7)
activerecord (3.1.0.beta1)
activeresource (3.1.0.beta1)
activesupport (3.1.0.beta1, 3.0.7)
ansi (1.2.5)
arel (2.1.0)
bcrypt-ruby (2.1.4)
builder (3.0.0, 2.1.2)
bundler (1.0.13)
coffee-script (2.2.0)
coffee-script-source (1.1.0)
configuration (1.2.0)
daemon_controller (0.2.6)
erubis (2.7.0, 2.6.6)
execjs (1.0.0, 0.3.3)
fastthread (1.0.7) …
Run Code Online (Sandbox Code Playgroud)

javascript ruby ruby-on-rails heroku

38
推荐指数
3
解决办法
2万
查看次数

循环遍历大量记录时,Ruby on Rails内存泄漏; find_each没有帮助

我有一个Rails应用程序,可以处理mysql数据库中的大量(数百万)记录.一旦它开始工作,它的内存使用速度就会以每秒50MB的速度快速增长.使用像oink这样的工具,我能够将根本原因缩小到一个循环,该循环遍历数据库中大表中的所有记录.

我知道如果我使用像Person.all.each这样的东西,所有记录都会被加载到内存中.但是,如果我切换到find_each,我仍然会看到相同的内存问题.为了进一步隔离这个问题,我创建了以下测试控制器,它除了遍历记录外什么都不做.我想find_each每次只在内存中保留少量对象,但内存使用在执行时会线性增长.

class TestController < ApplicationController
  def memory_test
    Person.find_each do |person|
    end
end
Run Code Online (Sandbox Code Playgroud)

我怀疑它与ActiveRecord缓存查询结果有关.但我检查了我的环境设置,并且我确实在开发中将所有与缓存相关的选项设置为false(我使用rails创建的默认设置).我在网上做了一些搜索,但找不到解决方案.

我使用rails 3.1.0 rc1和ruby 1.9.2

谢谢!

activerecord memory-leaks ruby-on-rails ruby-on-rails-3

32
推荐指数
1
解决办法
5566
查看次数

管道stdin到R

我无法将stdin传递给R脚本.

这是我的玩具脚本test.R:

#!/usr/bin/env Rscript
while(length(line <- readLines('stdin', n=1, warn=FALSE)) > 0) {
  write(line, stderr())
  # process line
}
Run Code Online (Sandbox Code Playgroud)

我想通过每一行并做一些处理.这是我的输入文件名input:

aaaaaa
bbbbbb
cccccc
dddddd
eeeeee
ffffff
Run Code Online (Sandbox Code Playgroud)

如果我做

cat input | test.R
Run Code Online (Sandbox Code Playgroud)

我只得到:

aaaaaa
Run Code Online (Sandbox Code Playgroud)

有什么我错过的吗?

shell r pipe

26
推荐指数
3
解决办法
3万
查看次数

Google Places API的搜索结果包含大量视口

我一直在试用Google的新Places API.它是"地点搜索"返回靠近您提供的纬度/经度的地点列表.每个结果都有它的实际纬度/朗,有些还有"视口",它们应该是体育场和购物中心等较大地方的边界框.但是,检查地图上的视口,它们太大了.例如,这是一个查询(它不起作用,因为它没有真正的密钥):

https://maps.googleapis.com/maps/api/place/search/json?location=47.5932,-122.3318&radius=300&sensor=false&key=FOO

以下是结果JSON的一部分:

{
  "status": "OK",
  "results": [ {
    "name": "Qwest Field",
    "vicinity": "Occidental Ave S, Seattle",
    "types": [ "stadium", "establishment" ],
    "geometry": {
      "location": {
        "lat": 47.5959329,
        "lng": -122.3317095
      },
      "viewport": {
        "southwest": {
          "lat": 47.5884079,
          "lng": -122.3477169
        },
        "northeast": {
          "lat": 47.6034568,
          "lng": -122.3157021
        }
      }
    },
    "icon": "http://maps.gstatic.com/mapfiles/place_api/icons/stadium-71.png",
    "reference": "CnRrAAAAwM6Pr_ER4VDFNlwg4_JrMxG9FGaqAXokpQXGot9OqzylWRX_NIPsptuMoIeHej9GUDp5otUTQifL-kyP5l0AM5u93PTV22U7-Xz-y_dHuWAjetviEBlo24JIGgWcnuExlE1FBh2FKkNzCdpyUdv7PRIQodCSeacFJtrl8ZkZ1wvfvxoUFCIvCrbknO6tEl3EewS1wrjl06M",
    "id": "d4fd94323d3f462730123ac2c5eb91d0180bb819"
  },
...
Run Code Online (Sandbox Code Playgroud)

如果你看两个角落的纬度/横档,它们就会分开.

我尝试了其他几个地方,他们都遇到了这个问题.有没有人注意到同样的问题?

api

1
推荐指数
1
解决办法
2130
查看次数