問題タブ [findandmodify]

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 投票する
2 に答える
1783 参照

mongodb - mongoDBのfindAndModifyは「トランザクション保存」ですか

私は知っています、mongoDBにはトランザクションサポートがありません。しかし、今度はドキュメントの値を読み取り、1ずつインクリメントして、新しい値を書き込む必要があります。

または-別の方法:要素を更新し、同時に値を読み取ります。このために私は検索と変更を使用するのが好きです:http ://www.mongodb.org/display/DOCS/findAndModify+Command

このコマンドはドキュメントを更新し、更新する前に値を返します。これは(同じように)トランザクションで発生しますか?重要なのは、他のセッションが他のセッションの2つのステップ間で同じ値を更新する可能性があるかどうかです。

(申し訳ありませんが、私にとって説明するのは難しいです-私が言おうとしていることをあなたが理解してくれることを願っています)

ありがとうございました。

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

mongodb - MongoDB: キャップ付きコレクションの findAndModify

キャップされたコレクションが空の場合は空のドキュメントをアトミックに挿入しようとしています。空でない場合は、最後に自然に並べ替えられたドキュメントを返します。findAndModify でこれを行うことはできますか?

これは、最新のドキュメントを返す (コレクションが空でない場合) か、存在しない場合は新しいドキュメントを挿入することを期待していましたが、呼び出されるたびに空白のドキュメント (_id なし) を挿入します。findAndModify は上限のあるコレクションで機能しますか? 追加されたドキュメントに_id.

ありがとう。

-スコット

0 投票する
2 に答える
5438 参照

mongodb - MongoDBシャーディングfindAndModify

データベースをシャーディングしようとしていますが、findAndModifyに問題があります

私はこのようなスキーマを持っています(myCollection):

シャードキーを次のように設定しています。

上記のスキーマがデータベースに挿入されているとしましょう。

今、私はこのクエリを実行します:

findAndModifyを実行すると、次のエラーが発生します。

なぜそれがこれを言っているのか誰かが私に説明できますか?またはそれに対する解決策?私は必要なことはすべてやっているように思えます。

0 投票する
2 に答える
878 参照

mongodb - grails gormを使用してmongodbでfindAndModifyを使用する

私のアプリケーションでは、grails と mongoDB を使用して findAndModify を使用する必要があります。私はこのコードを使用しました:

そしてそれはうまくいきます。しかし今は、ネイティブの mongodb オブジェクトを使用せずに、GORM を使用して findAndModify を使用したいと考えています。この作業の解決策はありますか?

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

mongodb - Mongodb findAndModify 埋め込みドキュメント - どのドキュメントを変更したかをどのように知ることができますか?

findAndModifyin mongodb は素晴らしいのですが、どの埋め込みドキュメントを変更したかを知るのに少し苦労しています。

Postこれは、 embeds_manyの例ですComments。(私は Mongoid ORM を使用していますが、質問はどの MongoDB セットアップにも共通です)。

この種の作業はOKですが、これを同時に実行している複数のプロセスがある場合select、別のプロセスが予約したコメントを選択できます(競合状態)。

これは私が今持っている最も近いものです(プロセスIDで予約しています):

これはうまくいくようです。これはこれを行うための最良の方法ですか、それともより良いパターンがありますか?

0 投票する
2 に答える
2119 参照

mongodb - MongodbfindAndModifyアトミック性

findから返されたドキュメント属性を参照してmodify内で使用する方法を知りたいです。元 :

私の理解では、findAndModifyはドキュメントをロックするため、findで見つかった属性を使用してmodifyで更新を実行したいと思います。これにより、操作がアトミックになります。

これはmongoでサポートされているのでしょうか。

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

c# - 文字列内の文字の検索と削除

私のプログラムはレジストリキーの値を読み取り、それらの値をインストールパスと組み合わせます。レジストリからインストールパスも読み取りました。

つまりString dllInstpath = installPath + rKey、次のようになります。 C:\Program Files (x86)\NSi\AutoStore Workflow 6\HpOXPdCaptureRes.dll

次に、上記の文字列を使用して、インストールパスからFileVersionInfoのファイル情報を取得し、すべての値をメモ帳に書き込みます。HpOXPdCaptureRes.dll

私の問題は、TRUEdll名のファイル名に「Res」が含まれていないことです。レジストリには、ファイル名に「Res」が含まれるファイル名のみが含まれています。私がする必要があるのは、テキストファイルから読み取り、すべての「Res」を見つけて、メモ帳ファイル内のテキスト行からそれらを削除することです。

したがって、出力は次のようになります。

現在: HpOXPdCaptureRes.dll

新しい: HpOXPdCapture.dll

私はオンラインで読んだことがありますが、これを行うための最良の方法はとを使用することReadAllLinesですWriteAllLines。ただし、検索と置換を実装する方法がわかりません。スペースや無効な文字などを削除する方法の例をたくさん見てきましたが、必要なものの例を見つけることができませんでした。

概要:

  • テキストファイルを読む
  • テキストのすべての行で罰金Resを科し、削除します
  • 現在のテキストファイルを保持します。つまり、ファイルを削除Resして閉じます

どんな助けでも大歓迎です。

ありがとうございました!

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

bash - すべてのユーザーサブディレクトリですべての.htaccessファイルを検索し、それに文字列を追加します

「public_html」(public_htmlではない)の下にある可能性のあるサブディレクトリの文字列全体で、すべてのユーザーアカウントのすべての「.htaccess」ファイル(ファイルが存在する場合、作成しない場合)を検索したいと思います。基本的に、画像を含む可能性のあるディレクトリにリモートで似ているものなら何でも見つけることができます。

これが私のコードです:

上記のスクリプトは問題なく実行されますが、実際には私が望んでいることを実行しません。ユーザーの画像ディレクトリを確認しましたが、そこに「.htaccess」ファイルが見つかりませんでした。:/

理想的には、実行中に何が起こっているかを画面に表示し、可能であれば、結果をテキストファイルに出力することもできます。

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

mongodb - Mongo で候補パスワードを bcrypt ハッシュと比較する

電子メールとパスワードでユーザーを検索し、1 つの要求でそれを更新する Mongo FindAndModify 要求をアトミックに作成したいと考えています。基本的な MD5 ハッシュ化されたパスワードと定義済みのソルトを使用して、リクエストの前にハッシュを計算し、次のリクエストを行います。

ただし、ハッシュ生成ごとに異なるソルトが使用されるため、bcrypt パスワードは毎回同じではなく、このアプローチは機能しません。現在、私は電子メールだけでユーザーを見つけ、BCrypt.checkPassword 関数を使用してコードでパスワードを確認し、true が返された場合はデータベースの値を更新する必要があります。そのため、2 つのリクエストを実行することになり、Mongo ではアトミックではありません。

それで、1つのMongoDBリクエストでそれを行う方法はありますか(bcryptハッシュと更新と比較してください)? (Mongo の Web サイトで、2 フェーズ コミットを手動で実装する方法に関する記事を見たことがありますが、クリーンで優れた解決策があるかどうか疑問に思っています)。