小编Geo*_*off的帖子

Ruby on Rails MySQL#08S01Bad握手 - 降级MySQL?

我们最近在Ubuntu 10.04LTS服务器上从MySQL 5.1.41升级到5.1.61.我们有一个古老的RoR网络应用程序,现在给出了一个糟糕的握手错误:

Mysql::Error in MainController#index

#08S01Bad handshake

/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/vendor/mysql.rb:523:in `read'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/vendor/mysql.rb:153:in `real_connect'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/mysql_adapter.rb:389:in `connect'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/mysql_adapter.rb:152:in `initialize'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/mysql_adapter.rb:82:in `new'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/mysql_adapter.rb:82:in `mysql_connection'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:262:in `send'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:262:in `connection_without_query_cache='
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/query_cache.rb:54:in `connection='
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:230:in `retrieve_connection'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:78:in `connection'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:763:in `columns'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:2060:in `attributes_from_column_definition_without_lock'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/locking/optimistic.rb:45:in `attributes_from_column_definition'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1502:in `initialize_without_callbacks'
/usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/callbacks.rb:225:in `initialize'
#{RAILS_ROOT}/app/controllers/application.rb:48:in `new'
#{RAILS_ROOT}/app/controllers/application.rb:48:in `log_info'
/usr/local/bin/mongrel_rails:19:in `load'
/usr/local/bin/mongrel_rails:19
Run Code Online (Sandbox Code Playgroud)

我用Google搜索并偶然发现http://bugs.ruby-lang.org/issues/5017,它告诉我这是一个Ruby MySQL扩展错误.我们没有使用MySQL gem.我们的网络应用程序非常古老而脆弱(Ruby v1.8.7,Rails v1.2.3,Mongrel 1.1.5).我们正在用Django重写代替它,所以我们只需要在接下来的几周内实现这一功能,直到我们用新网站替换它.

我们怎样才能克服这个错误?我认为降级到MySQL 5.1.41是处理这个问题的最佳方法,然后当我们在几周内开始使用新网站时,我们可以重新升级到5.1.61.但是,我有一个降级mysql的问题.这是我正在使用的命令:

sudo aptitude install mysql-server-5.1=5.1.41-3ubuntu12.10

但是,这告诉我Unable to find a version "5.1.41-3ubuntu12.10" for the package "mysql-server-5.1".我也试过了sudo aptitude install mysql-server-5.1=5.1.41,但那也行不通.如何让aptitude安装正确版本的MySQL?

ruby mysql ruby-on-rails ubuntu-10.04

19
推荐指数
2
解决办法
7322
查看次数

是否可以在Java中创建内存中的File对象?

我正在研究的优化项目之一现在广泛使用EPANet.我们在EPANet中反复调用两种模拟方法,以了解水如何流经配水网络.

HydraulicSim是我们使用的类别之一.查看重载simulate方法:

public void simulate(File hyd) throws ENException {
    ...
}

public void simulate(OutputStream out) throws ENException, IOException {
    ...
}

public void simulate(DataOutput out) throws ENException, IOException {
    ...
}
Run Code Online (Sandbox Code Playgroud)

我们使用的另一个类是QualitySim.在这里,我们还使用重载simulate方法:

public void simulate(File hydFile, File qualFile) throws IOException, ENException {
    ...
}

void simulate(File hydFile, OutputStream out) throws IOException, ENException {
    ...
}
Run Code Online (Sandbox Code Playgroud)

这是我们目前正在做的事情:

  1. 创建两个File对象,hydFilequalFile.
  2. 呼叫HydraulicSim.simulatehydFile.
  3. 呼叫QualitySim.simulate的 …

java

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

相当于Mercurial在Git中的大文件扩展名?

我正在从Mercurial将一些个人项目存储库迁移到Git.其中一个项目依赖于一些不变的,但是大型的shapefile和SQLite数据库.这些文件非常重要,需要存放在repo中,这样任何签出项目的人都可以访问它们.使用Mercurial,这很容易处理; 我使用了largefiles扩展.largefiles通过不尝试分析大于X的文件的内容来自动处理文件添加/更改.也就是说,我能做到hg addremove,一切都会奏效.

Git,就像Mercurial一样,不是为追踪大文件而设计的.但是,我没有看到类似的扩展.我查看了git-annex,但似乎我需要手动跟踪文件(即,我不能随意做git add -A).另外,如果我正确读到这一点,git-annex似乎在一个完全独立的回购中维护大文件.我想将当前仓库中的大文件保存在他们当前所在的目录中.

人们如何处理这种情况?当然,有很多项目需要跟踪项目运作中不可或缺的大型文件.git-annex会完成这个,还是需要其他扩展?

git mercurial

6
推荐指数
2
解决办法
908
查看次数

给定四分位数,我如何使用MATLAB,matplotlib,gnuplot或其他包来绘制盒须?

我给出了一些像这样的数据点:

2.50%   3.45
25.00%  4.19
50.00%  4.7
75.00%  5.42
97.50%  6.87
Run Code Online (Sandbox Code Playgroud)

这为绘图定义了完整的盒须元素.我不确定如何绘制这个.到目前为止我查找的所有方法(MATLAB,matplotlib,gnuplot)都是从原始数据构造框.我没有访问原始数据,但我有我的所有信息需要绘制的框.

在没有数据的情况下绘制盒子/胡须的最佳方法是什么?

statistics matlab graph gnuplot matplotlib

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

Django ORM:如何按日期排序,然后选择按外键分组的最佳对象?

我意识到我的标题有点复杂,但请允许我演示一下。我使用的是 Django 2.2.5 和 Python 3。以下是我当前正在使用的模型:

from django.db import models
from django.db.models import F
from django.contrib.postgres.indexes import GinIndex
from django.contrib.postgres.search import SearchVectorField, SearchVector, SearchQuery, SearchRank

class Thread(models.Model):
    title = models.CharField(max_length=100)
    last_update = models.DateTimeField(auto_now=True)

class PostQuerySet(models.QuerySet):
    _search_vector = SearchVector('thread__type') + \
                     SearchVector('thread__title') + \
                     SearchVector('from_name') + \
                     SearchVector('from_email') + \
                     SearchVector('message')

    ###
    # There's code here that updates the `Post.search_vector` field for each `Post` object
    # using `PostQuerySet._search_vector`.
    ###

    def search(self, text):
        """
            Search posts using the indexed `search_vector` field. I …
Run Code Online (Sandbox Code Playgroud)

python django postgresql full-text-search django-orm

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

如何调整Bootstrap 3内联表格宽度?

我有一个依赖Bootstrap 3的表单:

Imgur

完整的工作示例:http://jsfiddle.net/x7vk7/2/

要点是我有2列内容.第一列是col-lg-4,第二列是col-lg-8.第一列显示表单,第二列显示结果.

我遇到的问题与案例问题中的内联表单元素的宽度有关.我用这篇文章来弄清楚如何以水平形式正确嵌套内联表单元素.这是我对案例问题的相关代码:

<div class="form-group">
    <label class="col-lg-2 control-label" for="id_current_case_count" data-placement="top" data-toggle="tooltip" title="How many cases have you seen?">Cases</label>
    <div class="col-lg-10">
        <div class="form-inline">
            <div class="form-group">
                <input class="form-control" id="id_current_case_count" min="0" name="current_case_count" type="number" />
            </div>
            ±
            <div class="form-group">
                <input class="form-control" id="id_case_count_uncertainty" min="0" name="case_count_uncertainty" type="number" />
            </div>
            <div class="form-group">
                <select class="form-control" id="id_case_count_interval" name="case_count_interval">
                    <option value="weekly">per week</option>
                    <option value="total">total</option>
                </select>
            </div>
        </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

问题是我希望Cases问题的所有3个表单元素都在同一行.前两个元素只是整数字段,因此它们不必非常宽.调整前两个整数字段宽度的正确方法是什么,以便所有3个字段都适合同一行?

html css css3 twitter-bootstrap twitter-bootstrap-3

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