Yuya Uezato
Yuya Uezato
Ready for Review(の状態通知ですが、出し直します。) ## Types of changes Please check one of the following: - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking...
# 詳細 1. バケツを HTTP PUTする際に、そのバケツが、未だHTTP PUTされていないデバイスを含んでいる状況を考える。 2. この際、frugalos側は一度errorとなるが、そのバケツの情報が永続化されてしまう。 3. そのため、再起動後以降はその情報を読み取ってしまい、(errorではなく)warningとなる。 # 問題点 整合性がない。 errorとなったあとwarningになるため、再起動後のwarningをerrorに持ち上げる↑か、もしくは再起動前のerrorもwarningに下げる↓べきである。 ## 修正案 上記のような状況のバケツがPUTされた際には、errorとし、永続化はしない。 すなわち、バケツ生成は完全に失敗するものとして扱う。 # 再起動時に出力される実際のログ ``` Feb 26 15:56:33.183 INFO Committed: proposal_id=ProposalId { term:...
現在のHTTP HEADでは、mdsのオンメモリデータに対象Object Idが存在している場合に200を返しているが、Diskにデータが存在していない場合が多々あるため、cannylsのlump indexレベルで存在しているか(Diskまでデータが来ているか)まで確認するように意味を変更する、という案。
Frugalos RPC servers kindly reply error messages to the sender that called RPCs when internal errors occur: https://github.com/frugalos/frugalos/blob/master/frugalos_mds/src/server.rs#L52-L61 However, such error messages do not contain information of hosts who had...
自分の作ったクラスタやバケツが意図通りの構成になっているかを確認するために、 クラスタやバケツ構成を出力するためのコマンドを追加する。 HTML形式など、構造化された形での出力が得られると尚良い。
Whe issue the following command for the frugalos cluster that has 50million objects whose name starts with `frugalos` ``` time curl -XDELETE http://192.168.0.1:3000/v1/buckets/bucket0/object_prefixes/frugalos ``` then it makes the following result:...
# 背景 createまたはjoin時にエラーが発生するissue https://github.com/frugalos/frugalos/issues/65 を解決するためのPR # 技術的背景 **fibersの内部実装に触れるので、興味がない場合は飛ばしてください** `frugalos_config::cluster::create`関数 https://github.com/frugalos/frugalos/blob/21713490ede7405705d7685fc21a8fe5713c9a68/frugalos_config/src/cluster.rs#L120-L172 に問題があり、この関数を抜けるタイミングで`thread '' panicked at 'Error: Other (cause; Monitor target aborted)`が発生する。 より具体的に述べるために、以下の部分に注目する: ```rust let mut executor = track!(ThreadPoolExecutor::new().map_err(Error::from))?; ... let mut...
# 現況と問題 Frugalosでは動作に関わる多くの設定値を起動時にファイルから読み込む、またはコマンドラインから読み込んでいる。このため、稼働しているFrugalosの一部のパラメータを停止せずに変更することができない。変更したいニーズは、例えばチューニングのために変えたいということもあるし、何かしら問題が起こった異常時でも稼働するように調整を急場で行いたい時などで多岐に渡る。 # 目標と手段 HTTP APIやRPCで実行中に変更可能なパラメータからなる設定ファイルを投げ、それが即座に反映されるようにしたい。
# Where does error occur `track!(protobuf::decode_log_prefix(&bytes))?` in the line 57 of https://github.com/frugalos/frugalos/blob/420ab1f1f223787fb054e959e9ab93d82176fb06/frugalos_raft/src/storage/log_prefix/load.rs#L55-L71 # Reproduce 1. Make a frugalos cluster with multiple frugalos servers 2. Kill one server in the cluster...
Frugalosが出力するログから、一つのraftクラスタにおける各termでの選挙にどれくらい時間がかかっているかなどパラメータチューニングに使える情報を収集し、同時にraftクラスタの各ノードの状態がどのように移り変わったかを可視化する。 ログを加工する話であるので、Frugalos本体に取り込む機能ではない。