問題タブ [berkeley-db]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
21284 参照

java - PostgreSQLデータベースを単純なキー値ストアとして使用するための最良の方法

postgreSQLデータベースを使用する必要があり、現在のberkeleyDBの使用に取って代わります。それでも; これは理想的な状況ではなく、私の手に負えない状況だと思います。

だから問題は...postgreSQLをキーバリューストアにする必要がある場合、可能な限り効率的にしながら、これをどのように行うのでしょうか?

私の値はバイト配列であり、私のキーは文字列です。これらの文字列の長さにいくつかの制限を課すことができます。

値とキーを保持する主キー列にblobを使用する必要があると思いますが、この旅に出たばかりなので、スタックオーバーフローコミュニティの誰かがこれを行ったかどうか、または特定の「落とし穴」があるかどうかに興味があります気をつけるべきです。

0 投票する
1 に答える
45 参照

security - 認証を設定するberkeleydbje

berkeley db Java Edition でデータベース アプリケーションにユーザー認証を設定する方法。

0 投票する
1 に答える
770 参照

java - Berkeley DB JEBaseAPIのセカンダリデータベースとシーケンスに関する問題

とで構成されるクラスDocumentがId (int)ありUrl (String)ます。Idにプライマリインデックスとにセカンダリインデックスを設定したいと思いUrlます。Idの自動インクリメントのシーケンスも必要です。そこで、SecondaryDatabaseを作成してから、シーケンスを作成します。シーケンスの初期化中に、例外が発生します。

シーケンスの初期化中に、セカンダリデータベースが強制的に更新されるようです。MyDocumentBidingのentryToObjectメソッドをデバッグすると、オブジェクトに変換しようとするバイトはランダムに見えます。

私は何が間違っているのですか?

0 投票する
4 に答える
1106 参照

c++ - C++: void* へのキャストとその逆

* ---編集 - ソース全体*

最後にデバッグすると、「get」と「value」の値が違う!おそらく、間違った方法で void* に変換して User に戻しますか?

解決

すべてのPODをvoid *に変換し、これらの部分を結合する一種の「シリアライザ」を作成します

PS または、User を POD タイプに書き換えると、すべてがうまくいくと思います。

追加

それは奇妙ですが...私はdefenetly非podオブジェクトをvoid *にキャストして戻し(内部にstd::stringがあります)、それで問題ありません(dbに送信して戻す必要はありません)。どうしてですか?そして、'trough' db defenetly pod オブジェクトをキャストして送信した後 (追加のメソッドはありません。すべてのメンバーはポッドです。単純な構造体 {int a; int b; ...} です)。私のアプローチの何が問題になっていますか?

最初の「追加」の約 1 週間後に追加

くそー...私はそれをコンパイルしました。それが返す汚れの種類を見てください。大丈夫!・・・無理!... ああ!. 主よ... 合理的な質問 (状況の 99.999% で正しい答えは「私の」ですが... ここでは...) - これは誰のせいですか? 私またはVS?

0 投票する
4 に答える
15019 参照

java - Berkeley DB の GUI

DPL インターフェイス経由で Berkeley DB Java エディションを使用しています。
データベースに保存されたデータを簡単に参照できる GUI ライブラリについて誰か知っているかどうかを尋ねたいと思います。

BDB ドキュメントには、保存されたエンティティに関するメタデータはどこにも保存されないため、データを作成した人だけがそこから返されるクラスの型を知ることができると書かれていることは知っています。そのため、メイン プロジェクトに含まれるライブラリ (完全なプログラムではない) を探しているので、クラスの型を認識し、データを正しく表示できます。

ps このbdb-browserを見つけましたが、デッド プロジェクトのようです。

更新:
これまでのところ、JMX を介して BDB について収集された統計を表示する GUI を見つけました。使用方法は次のとおりです。 http://www.oracle.com/technology/documentation/berkeley-db/je/jconsole/JConsole-plugin.htmlまだデータブラウザ
を検索しています...

0 投票する
1 に答える
361 参照

ruby - Ruby で Perl DB_Files を読み取る方法

Perl スクリプトを Ruby に移行しています。Perl スクリプトは、DB_HASHモードで DB_File を使用します。Rubyでそのようなファイルからすべてのキーと値を読み取るにはどうすればよいですか?

0 投票する
3 に答える
4939 参照

svn - 所有しているSVNリポジトリのタイプを確認するにはどうすればよいですか?

特定のSVNリポジトリで使用されているファイルシステムの種類を確認するにはどうすればよいですか?svnadminを使用して新しいリポジトリを作成したいのですが、サーバー上にすでに存在する他のリポジトリと一貫した設定で新しいリポジトリを作成していることを確認したいと思います。

他のすべてがシステム上でFSFSである場合、berkleydbリポジトリをセットアップしたくありません。

/ repositoryname / db / fs-typeを確実に調べることはできますか?

0 投票する
1 に答える
1228 参照

c - Berkeley DB コンカレント データ ストア アプリケーションがハングするのはなぜですか?

読み取り用にコンカレント データ ストア (CDB) データベースを開こうとすると、アプリケーションがハングします。

データベース環境は、別のプロセスがデータベースを書き込み用に開いていると認識していると思われます。ただし、データベースにアクセスするすべてのアプリケーションは、私が作成したインターフェイス ライブラリを介してデータベースにアクセスするため、これは当てはまりません。これは、atexit() システム コールを介して終了関数を登録し、DB ハンドルと DB_EN​​V ハンドルの両方が適切に閉じられるようにします --以前に実行されたすべてのアプリケーションが正常に終了しました。

インターフェイス ライブラリは、次のようにデータベースを開きます。

このコードではエラーは発生しません。

インターフェイス ライブラリは、インターフェイス ライブラリを使用するプロセスが終了したときに実行される次のコードも登録します。

おっしゃる通り、以前に実行したインタフェース ライブラリを使用するプロセスはすべて正常に終了しました。このようなプロセスはすべてシングルスレッドです。

次のプラットフォームで Berkeley DB のバージョン 4.8.24.NC を使用しています。

何か案は?

0 投票する
5 に答える
45566 参照

svn - Subversion はどのように正確にリポジトリにファイルを保存しますか?

Subversion book を読んだところ、Subversion は個々のファイルを保存するのではなく、ディスク容量を最小限に抑えるためにデルタのみを保存することが明らかでした。Subversion はバイナリ ファイルでも同じことを行います (これは以前は CVS の大きな弱点でした)。

しかし、私は正確なメカニズムを理解していません。ファイルをコミットするとどうなりますか?

  1. Subversion は差分のみを保存します (そして既に古いバージョンを持っています)
  2. Subversion は以前のバージョンを削除し、新しいファイルをそのまま保存し、必要に応じて古いバージョンを「再作成」するために逆差分を作成します。
  3. 私が考えていなかった他の何か。

最初のケースが最も論理的に見えるかもしれません。しかし、これは別の問題を提起します。Subversion リポジトリに 1000 件のコミットを含むファイルがあり、新しい開発者がクリーン コピーをチェックアウトした場合、Subversion は元のバージョンを取得し (初期インポート)、結果を返す前に 1000 の差分を適用する必要があります。これは正しいです?最新バージョンも保持されるファイルのキャッシュのようなものはありますか?

基本的に、svn リポジトリの内部に関する情報はどこで見つけることができますか?

更新:どうやら、Subversion のバックエンドがこれに大きな役割を果たしているようです。現在または執筆中、FSFS はオプション 1 を使用し、BDB はオプション 2 を使用します。ありがとう msemack!

0 投票する
0 に答える
3858 参照

c# - Berkeley DB: ここで何が間違っているのでしょうか?

C# で Berkeley DB を使用して探索する小さなプログラムを作成しました。

テーブルとして使用するデータベースと、そのテーブルのインデックスとして多数のセカンダリ データベースを作成します。問題は、次のエラーでクラッシュすることです。

特定の数のレコードがテーブルに書き込まれると、常にクラッシュします。さらに、nIndexes の値を増やすと、クラッシュする前に書き込まれるレコードの数が減少します。値が十分に小さい場合 (nIndexes = 5、nRecords = 50 など)、プログラムは問題なく完了します。これは、有限のリソースを使い果たしていると思いますが、どこに問題があるのか​​ わかりません。