小编set*_*thi的帖子

轨道连接池5

我有rails 5 rc1的这个问题.有没有人知道如何在环境文件中配置它以及rails 5活动记录的默认连接池大小是什么.

   Puma caught this error: could not obtain a connection from the pool within 5.000 seconds (waited 5.000 seconds); all pooled connections were in use (ActiveRecord::ConnectionTimeoutError)
    /home/bsethi/.rvm/gems/ruby-2.2.2/gems/activerecord-5.0.0.rc1/lib/active_record/connection_adapters/abstract/connection_pool.rb:202:in `block in wait_poll'
    /home/bsethi/.rvm/gems/ruby-2.2.2/gems/activerecord-5.0.0.rc1/lib/active_record/connection_adapters/abstract/connection_pool.rb:193:in `loop'
    /home/bsethi/.rvm/gems/ruby-2.2.2/gems/activerecord-5.0.0.rc1/lib/active_record/connection_adapters/abstract/connection_pool.rb:193:in `wait_poll'
    /home/bsethi/.rvm/gems/ruby-2.2.2/gems/activerecord-5.0.0.rc1/lib/active_record/connection_adapters/abstract/connection_pool.rb:154:in `internal_poll'
    /home/bsethi/.rvm/gems/ruby-2.2.2/gems/activerecord-5.0.0.rc1/lib/active_record/connection_adapters/abstract/connection_pool.rb:278:in `internal_poll'
    /home/bsethi/.rvm/gems/ruby-2.2.2/gems/activerecord-5.0.0.rc1/lib/active_record/connection_adapters/abstract/connection_pool.rb:148:in `block in poll'
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-5

15
推荐指数
2
解决办法
1万
查看次数

操作电缆无法连接(无法升级到WebSocket)

我在使用这些日志消息连接到非开发环境中的websocket时遇到问题

Failed to upgrade to WebSocket (REQUEST_METHOD: GET, HTTP_CONNECTION: close, HTTP_UPGRADE: )

Finished "/cable/"[non-WebSocket] for 127.0.0.1 at 2016-07-06 09:44:29 +1000
Run Code Online (Sandbox Code Playgroud)

我稍微调试了一下,发现浏览器发送的请求/ javascript与unicorn收到的请求(与nginx一起运行)不完全相同.

浏览器的请求标头是

GET ws://cc-uat.com.au/cable HTTP/1.1
Host: cc-uat.com.au
Connection: Upgrade
Pragma: no-cache
Cache-Control: no-cache
Upgrade: websocket
Origin: http://cc-uat.com.au
Sec-WebSocket-Version: 13
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
Cookie: <Lot of cookies>
Sec-WebSocket-Key: QGdJkYIA2u7vtmMVXfHKtQ==
Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits
Sec-WebSocket-Protocol: actioncable-v1-json, actioncable-unsupported
Run Code Online (Sandbox Code Playgroud)

这里的连接是'升级'但是websocket请求的连接'已关闭'(可能是nginx搞乱了吗?)

websocket驱动程序中的这段代码失败了

def self.websocket?(env)
      connection = env['HTTP_CONNECTION'] || ''
      upgrade    = …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails nginx ruby-on-rails-5 actioncable

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

Hbase shell - 如何写字节值

我想在hbase中写一个值为65的值.我必须在hbase shell上运行以下命令:

put 'table','key','cf:qual','A'
Run Code Online (Sandbox Code Playgroud)

但有没有办法直接写它:

put 'table','key','cf:qual',65 (this is not allowed though)
Run Code Online (Sandbox Code Playgroud)

如果您了解其他问题,请告诉我,我会解释更多.

更新:

到65岁时,我打算将'A'直接放在'A'的ascii值上.对我来说真正的问题是我想把shell中的值放在128-255范围内.

hbase

8
推荐指数
2
解决办法
7323
查看次数

Omniauth facebook - Auth信息字段

我正在尝试通过Facebook登录网站设置omniauth.问题是Facebook没有发送'info'字段.

我为不同的环境设置了2个facebook应用程序.

对于一个应用程序,响应具有字段

#<OmniAuth::AuthHash credentials=#<OmniAuth::AuthHash expires=true expires_at=14
42913734 token="CAAU6NSaozowBANJoDeZCakDuUZAiIZBGQ5cmFYRTwQwo7SK2JK7uhcRK7WIadpp
zjKfict9pMASS2k9XJZBTgnI8WJvJA42er9Xj8nuoeLjbEQo8TKB7b5hVlsOwRs5kcPpOPwyUTUc0ekF
uu2w4ubNZBMXZBw5xjGkQwZBZA46fATGOvDXJSrWOOAiQteWnkSO9JkeZC2SfmZCQqcSR0zdV52"> ex
tra=#<OmniAuth::AuthHash raw_info=#<OmniAuth::AuthHash id="xxxxxxxxxx" na
me="xxxxxxx">> info=#<OmniAuth::AuthHash::InfoHash image="http://graph.facebo
ok.com/xxxxxxxxxxx/picture" name="xxxx"> provider="facebook" uid="xxxxxxxx">
Run Code Online (Sandbox Code Playgroud)

在开发环境中,我得到了回应

#<OmniAuth::AuthHash credentials=#<OmniAuth::AuthHash expires=true expires_at=14
42912896 token="CAAPK1ZAgrDtEBAKKvcj4jGu6iaIxYYJV7LZCJ6MZCELZCgNyowkqPeB5kHBsVw4
ZBKoZCv4DD6my4s8qhO1hJyEFzcb1IpKt03ydzWORZCR3PCf1bw6A9jRudmcJn1N37WgqckmuKUj4k1y
qb3fcRpNPxAxx0asXJlaUJTcVR5wi0sRIOc9l3yFm6XyuMA464MBz5vt9AvNcVB9DAGm5kHr"> extra
=#<OmniAuth::AuthHash raw_info=#<OmniAuth::AuthHash email="xxxxx@yahoo.co.in"
first_name="xxxx" gender="male" id="xxxxx" last_name="xxxx" link="h
ttps://www.facebook.com/app_scoped_user_id/xxxx/" locale="en_US" na
me="xxxx" timezone=10 updated_time="2015-06-06T03:35:33+0000" verified=tru
e>> info=#<OmniAuth::AuthHash::InfoHash email="xxxxxxx" first_name="
xx" image="http://graph.facebook.com/xxx/picture" last_name="xxxxx" name="xxxxx" urls=#<OmniAuth::AuthHash Facebook="https://www.facebook.c
om/app_scoped_user_id/xxxxx/"> verified=true> provider="facebook" ui
d="xxxxxxxxxxxxxxxx">
Run Code Online (Sandbox Code Playgroud)

我想知道它是否是应用程序级别设置,因为两者的代码相同.应用程序方面唯一的区别是API v2.3,其他是2.4

ruby-on-rails facebook-graph-api omniauth-facebook

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

DFS的CLRS拓扑排序算法反向?

在查看拓扑排序的步骤时,我有一个困惑,我发现 DFS 的相反顺序是拓扑排序的预期解决方案。

我也尝试了一个小代码

void graph::dfs(void)
{
    for(std::vector<vertex>::iterator iter =vertexes.begin();iter < vertexes.end();iter++ ){
        iter->visited = WHITE;  
    }   

    for(std::vector<vertex>::iterator iter =vertexes.begin();iter < vertexes.end();iter++ ){
        if(iter->visited == WHITE){
            dfs_visits(*iter);
        }
    }

    std::cout << "-----------------dfs------------------"<<std::endl;
    for(std::list<int>::reverse_iterator riter = q.rbegin() ; riter != q.rend();riter++)
        std::cout << *riter << std::endl;

    std::cout << "-----------------topological_sort------------------"<<std::endl;
    for(std::list<int>::iterator iter = q.begin() ; iter != q.end();iter++)
        std::cout << *iter << std::endl;


    q.clear();
}


void graph::dfs_visits(vertex& source){
    source.visited = GREY;
    for(std::list<edge>::iterator iter = source.list.begin();iter != source.list.end();iter++){
        if(vertexes[iter->destination_vertex].visited == WHITE){
            dfs_visits(vertexes[iter->destination_vertex]);
        } …
Run Code Online (Sandbox Code Playgroud)

c++ graph

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

使用Pundit授权控制器

我正在学习使用Pundit进行授权。但是我看到的是资源授权而不是页面授权。如果用户无权使用pundit访问该页面,我希望将其重定向到未经授权的页面。

例如

class OnlyAdminCanVisitController < ApplicationController
    before_filter :admin_authenticate
Run Code Online (Sandbox Code Playgroud)

停止非管理员角色的用户。

另外,我想处理如下的组合方案(考虑到有Admin,Manager,Employee,Outsider等4个角色。下面的设计显然很糟糕)

    class AdminManagerCanVisitController < ApplicationController
        before_filter :admin_or_manager_authenticate

    class AdminEmployeeCanVisitController < ApplicationController
        before_filter :admin_or_employee_authenticate

   class AdminOutsiderCanVisitController < ApplicationController
        before_filter :admin_or_outsider_authenticate

    class AdminManagerEmployeeCanVisitController < ApplicationController
        before_filter :admin_or_manager_employee_authenticate
Run Code Online (Sandbox Code Playgroud)

我有4个角色,并且想为这些控制器编写允许任意组合授权的权威策略。

让我知道专家是否旨在解决这个问题。

谢谢

ruby-on-rails ruby-on-rails-4 pundit

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

在纯C中传递二维数组

我正在尝试编写通用矩阵转置函数

void reverse(int** v , int vertexes )
{
    for(int i=0;i<vertexes;i++)
        for(int j=0;j<vertexes;j++) 
        {
            if(v[i][j] == 1 && v[j][i]==0){
                v[j][i] = -1;
                v[i][j] = 0;        
            }
        }

    for(int i=0;i<vertexes;i++)
        for(int j=0;j<vertexes;j++) 
        {
            if(v[i][j] == -1 )
                v[i][j] = 1;
        }
} 
Run Code Online (Sandbox Code Playgroud)

而主要功能是

void matrix_graph::process()
{

    int v[7][7] = {
        {0,1,0,0,0,0,0},
        {0,0,1,1,0,0,0},
        {1,0,0,0,0,0,0}, 
        {0,0,0,0,1,0,0},
        {0,0,0,0,0,1,0},
        {0,0,0,1,0,0,1},
        {0,0,0,0,0,1,0}
    };

    reverse(v,7);
}
Run Code Online (Sandbox Code Playgroud)

我按预期得到了一个

error C2664: 'reverse' : cannot convert parameter 1 from 'int [7][7]' to 'int **'
Run Code Online (Sandbox Code Playgroud)

我们能做些什么吗?

我们可以做的最好的访问i,j传递 …

c arrays graph

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

在java和引用中获取/设置

Get/Set方法用于保护我的类字段.

但是由于Java正在使用引用,我的私有字段仍然暴露出来..

例如

private Date d;

Date getDate(){
  return d;
}

void setDate(Date inD){
//Checks for inD 
d = inD;
}


//Still the issue is 

getDate().setHours(xyz);
Run Code Online (Sandbox Code Playgroud)

什么是正确的方法?因为我不想在不使用setDate的情况下更改我的日期.

java

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