17

既存の Rails コードベースで作業を開始したばかりで、コードベースでテストを実行しようとしています。ただし、実行するbundle exec rspec spec/と、すべてのテストで次のエラーが発生します。

Failure/Error: Unable to find matching line from backtrace
Redis::CommandError:
   ERR invalid DB index
 # ./lib/redised.rb:35:in `flushdb_all'
 # ./lib/redised.rb:35:in `each_value'
 # ./lib/redised.rb:35:in `flushdb_all'

私は Rails の初心者です。Michael Hartl の Rails チュートリアルの 11 章のうち 8 章しか終えていないので、Redis には詳しくありません。私のRedisのバージョンはredis-2.4.17.

4

2 に答える 2

26

問題は、データベースの数を増やす必要があることでした。そうするために、私はに行って/usr/local/etc変更しましたredis.conf。データベース番号を 128: に設定しましたdatabases 128

于 2013-01-11T22:23:41.470 に答える
2

手遅れですが、他の人にとっては役立つかもしれません。

「test」などのデータベース名を使用している場合は、「0」/0 などのインデックスに置き換えてください。インデックスが不明な場合は、インデックスとして 0 を試してください。

于 2017-04-11T18:23:36.980 に答える