2023年1月14日改訂
example.pb.go
中の最後の2行のコメントが英語のままになっていますが「注:protobufは内部のフィールドとメソッドを生成しますが簡潔にするために省略しています。」に修正(訳出漏れ)(2022.8.4)Close()
メソッドで、次のようにSync
の後にUnsafeUnmap
の呼び出しを追加する(2022.9.11)if err := i.mmap.Sync(gommap.MS_SYNC); err != nil { return err } if err := i.mmap.UnsafeUnmap(); err != nil { return err }
os.MkdirTemp
の部分を、次のようにerr
を検査するように修正する(2022.9.11)dir, err := os.MkdirTemp("", "segment-test") require.NoError(t, err) defer os.RemoveAll(dir)
Read
メソッドの最後の処理を次のように修正する(2022.9.11)if s == nil { return nil, fmt.Errorf("offset out of range: %d", off) } return s.Read(off)
error.go
のimport
文の内容を、次のように変更する(2022.9.11)import ( "fmt" "google.golang.org/genproto/googleapis/rpc/errdetails" codes "google.golang.org/grpc/codes" "google.golang.org/grpc/status" )
error.go
のGRPCStatus
メソッドの内の404
が指定されている部分を、次のようにcodes.OutOfRange
に変更する(2022.9.11)st := status.New( codes.OutOfRange, fmt.Sprintf("offset out of range: %d", e.Offset), )
log.go
を、次のように変更する(2022.9.11)if s == nil { return nil, fmt.Errorf("offset out of range: %d", off) }
log.go
を、次のように変更する(2022.9.11)if s == nil { return nil, api.ErrOffsetOutOfRange{Offset: off} }
want := status.Code(api.ErrOffsetOutOfRange{}.GRPCStatus().Err())
」を「want := codes.OutOfRange
」に修正(2022.11.13)setup_test.go
」を「server_test.go
」に修正(2022.8.31)Server: true,
」のtrue
の位置を上の行に合わせる(2022.10.9)server_test.go
中の「crtPath
」を「certPath
」に修正(2か所)(2022.10.9)newClient(crtPath,
」を「newClient(certPath,
」に修正(2022.10.9)Agent
構造体の定義にあるshutdowns
フィールドを削除(2022.11.13)
New
関数でのshutdowns
フィールドを初期化している次のコードを削除(2022.11.13)shutdowns: make(chan struct{}),
setupServer()
関数の最後の「return err
」を「return nil
」に修正(2022.11.13)Shutdown
関数でのshutdowns
フィールドをクローズしている次のコードを削除(2022.11.13)close(shutdowns)
want := status.Code(api.ErrOffsetOutOfRange{}.GRPCStatus().Err())
」を「want := codes.OutOfRange
」に修正(2022.11.13)return conn, err
」を「return conn, nil
」に修正(2022.12.4)distributed_test.go
のimport
からio/ioutil
を削除(2022.10.23)distributed_test.go
内の「ioutil.TempDir
」を「os.MkdirTemp
」に修正(2022.10.23)Agent
構造体の定義にあるshutdowns
フィールドを削除(2022.11.13)
setupServer()
関数の最後の「return err
」を「return nil
」に修正(2022.11.13)want := status.Code(api.ErrOffsetOutOfRange{}.GRPCStatus().Err())
」を「want := codes.OutOfRange
」に修正(2022.11.13)$ export MC_URL=https://raw.githubusercontent.com\ /GoogleCloudPlatform/metacontroller/master/manifests/を、
$ export MC_URL=https://raw.githubusercontent.com\ /metacontroller/metacontroller/master/manifests/production $ curl -L $MC_URL/metacontroller-crds-v1.yaml > \ metacontroller/templates/metacontroller-crds-v1.yamlに修正します(2023.1.14)
google.golang.org/grpc
としてv1.45.0
のインストールが示されています。これをlatest
にすると196頁のpicker_test.go
がコンパイルできなくなります。コンパイルできるのは、v1.50.0
までですので、注意してください(2022.12.03)