Visitar URL original
rpc rewrite: control RPCs via gRPC, data transfer via own mechanism by problame · Pull Request #111 · zrepl/zrepl · GitHub
Skip to content

rpc rewrite: control RPCs via gRPC, data transfer via own mechanism - #111

Merged
problame merged 12 commits into
masterfrom
grpc_dataconn_rpc
Mar 13, 2019
Merged

problame merged 12 commits into
masterfrom
grpc_dataconn_rpc

Conversation

@problame

@problame problame commented Dec 8, 2018

Copy link
Copy Markdown
Member

No description provided.

Comment thread daemon/logging/build_logging.go Resolved
Comment thread daemon/transport/connecter/connecter.go Resolved
Comment thread daemon/transport/dataconn/dataconn.go Resolved
Comment thread endpoint/context.go Resolved
Comment thread lazy.sh Resolved
Comment thread replication/fsrep/fsfsm.go Resolved
Comment thread replication/mainfsm.go Resolved
@problame
problame force-pushed the grpc_dataconn_rpc branch 2 times, most recently from 19b5e39 to 08ca378 Compare December 11, 2018 20:46
@problame
problame force-pushed the grpc_dataconn_rpc branch 3 times, most recently from a2864e4 to bb44be4 Compare December 11, 2018 23:38
Comment thread daemon/logging/build_logging.go Outdated
ctx = snapper.WithLogger(ctx, log.WithField(SubsysField, SubsysSnapshot))
ctx = transport.WithLogger(ctx, log.WithField(SubsysField, SubsysTransport))
ctx = transportmux.WithLogger(ctx, log.WithField(SubsysField, SubsysTransportMux))
ctx = rwccmd.ContextWithLog(ctx, log.WithField(SubsysField, SubsysRwccmd))

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

rwccmd uses Printf which results in error-level log output. we'll want to have an adaptor or something to map this to debug-level output.

@problame problame left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • the timeout-related FIXME needs to be addressed
  • a proper commit message should document:
    • changes to the transport architecture
    • reference the package rpc doc file

Comment thread rpc/dataconn/dataconn.go Outdated

getLog(ctx).Debug("pre handler")

// FIXME wrap conn into an idle-timeout conn

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no go: try setting up a test scenario for stalled timeouts.
then implement timeout handling.
consider re-using keepaliveio (still refd by tag grpc_dataconn_rpc_prerebase on my local machine)

@problame
problame force-pushed the grpc_dataconn_rpc branch 5 times, most recently from cfdb977 to ea7b6c3 Compare December 23, 2018 00:07
@problame
problame force-pushed the grpc_dataconn_rpc branch 2 times, most recently from 9640b7a to bf76a1e Compare January 5, 2019 20:54
@problame
problame force-pushed the grpc_dataconn_rpc branch 3 times, most recently from 4448d13 to ea7b347 Compare January 17, 2019 11:16
@problame

Copy link
Copy Markdown
Member Author

Bug observed while testing privately: Prune Receive exited prematurely
image-u6z7uz

@problame
problame force-pushed the grpc_dataconn_rpc branch 4 times, most recently from edf59b4 to d436ba2 Compare February 20, 2019 22:16
@problame

Copy link
Copy Markdown
Member Author

If the filesystem doesn't exist on the sink, the server returns the following error (albeit having reasonable debug log output):

image

@problame
problame force-pushed the grpc_dataconn_rpc branch from d436ba2 to 0230c63 Compare March 13, 2019 13:01
@problame problame changed the title WIP grpc + dataconn RPC rpc rewrite: control RPCs via gRPC, data transfer via own mechanism Mar 13, 2019
@problame
problame merged commit 0230c63 into master Mar 13, 2019
@problame problame added 0.1 and removed 0.1 labels Mar 18, 2019
@problame
problame deleted the grpc_dataconn_rpc branch March 21, 2019 16:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant