seaweedfs/weed/pb
Chris Lu 755af4adf4
s3: actually bind outbound connections when -ip.bind is set (#9849)
* s3: set outbound bind IP before the first filer dial

Standalone weed s3 dialed the filer for GetFilerConfiguration before
SetOutboundLocalIP ran, so that gRPC conn was created with the stock
dialer and no source address. gRPC caches conns by address and reuses
the original dialer on reconnect, so the s3->filer connection kept
leaving from the OS-chosen source for the life of the process even
after the bind IP was set a moment later.

* grpc: install the outbound-bind dialer unconditionally

The dialer was installed only when OutboundLocalAddr was already set at
GrpcDial time, baking the source-address decision into the cached conn,
so a conn dialed before the bind IP was configured never bound.

Install the context dialer always and decide per dial: bind through
OutboundDialContext once a source is set, otherwise fall back to the
stock net.Dialer so default deployments keep gRPC's dial timeout and
keepalive behavior. The bind now applies on the next reconnect
regardless of ordering, matching the HTTP transport's unconditional
DialContext.
2026-06-07 10:20:58 -07:00
..
filer_pb filer: cooling-off dual-read for POSIX locks during ring changes (#9672) 2026-05-25 12:34:15 -07:00
iam_pb feat(s3): add TagUser, UntagUser, ListUserTags IAM actions (#9572) 2026-05-19 17:35:44 -07:00
master_pb fix(volume.list): show one entry per physical disk on multi-disk nodes (#9541) 2026-05-18 14:43:44 -07:00
message_fbs add message batch 2022-07-28 23:24:38 -07:00
mount_pb IAM Policy Management via gRPC (#8109) 2026-01-25 13:39:30 -08:00
mount_peer_pb peer chunk sharing 1/8: proto definitions (#9130) 2026-04-18 20:02:55 -07:00
mq_agent_pb IAM Policy Management via gRPC (#8109) 2026-01-25 13:39:30 -08:00
mq_pb IAM Policy Management via gRPC (#8109) 2026-01-25 13:39:30 -08:00
plugin_pb fix(admin): carry filer addresses as ServerAddress in plugin cluster context (#9600) 2026-05-21 02:10:27 -07:00
remote_pb feat(filer): add lazy directory listing for remote mounts (#8615) 2026-03-13 09:36:54 -07:00
s3_lifecycle_pb feat(s3/lifecycle): LifecycleDelete RPC server (#9349) 2026-05-07 15:03:33 -07:00
s3_pb iam: add IAM group management (#8560) 2026-03-09 11:54:32 -07:00
schema_pb IAM Policy Management via gRPC (#8109) 2026-01-25 13:39:30 -08:00
volume_server_pb [CheckDisk]: implement disk health detection (#9560) 2026-06-02 09:02:05 -07:00
worker_pb EC encode: place shards via ecbalancer.Place + configurable replica placement (#9623) 2026-05-22 20:22:30 -07:00
filer_pb_direct_read_test.go filer.sync: send log file chunk fids to clients for direct volume server reads (#8792) 2026-03-27 11:01:29 -07:00
filer_pb_direct_read.go Adjust rename events metadata format (#8854) 2026-03-30 18:25:11 -07:00
filer_pb_tail_test.go fix(filer.sync): keep sync_offset fresh through filtered-event markers (#9733) 2026-05-28 23:29:59 -07:00
filer_pb_tail.go fix(filer.sync): keep sync_offset fresh through filtered-event markers (#9733) 2026-05-28 23:29:59 -07:00
filer.proto filer: cooling-off dual-read for POSIX locks during ring changes (#9672) 2026-05-25 12:34:15 -07:00
grpc_client_server_test.go grpc: don't tear down the shared master connection on a caller's own timeout (#9775) 2026-06-01 15:11:02 -07:00
grpc_client_server.go s3: actually bind outbound connections when -ip.bind is set (#9849) 2026-06-07 10:20:58 -07:00
iam.proto feat(s3): add TagUser, UntagUser, ListUserTags IAM actions (#9572) 2026-05-19 17:35:44 -07:00
Makefile feat(s3/lifecycle): LifecycleDelete RPC server (#9349) 2026-05-07 15:03:33 -07:00
master.proto admin: report file and delete counts for EC volumes (#9060) 2026-04-13 21:10:36 -07:00
message.fbs add message batch 2022-07-28 23:24:38 -07:00
mount_peer.proto peer chunk sharing 1/8: proto definitions (#9130) 2026-04-18 20:02:55 -07:00
mount.proto move to https://github.com/seaweedfs/seaweedfs 2022-07-29 00:17:28 -07:00
mq_agent.proto Add Kafka Gateway (#7231) 2025-10-13 18:05:17 -07:00
mq_broker.proto Fixes for kafka gateway (#7329) 2025-10-17 20:49:47 -07:00
mq_schema.proto Add Kafka Gateway (#7231) 2025-10-13 18:05:17 -07:00
plugin.proto fix(admin): carry filer addresses as ServerAddress in plugin cluster context (#9600) 2026-05-21 02:10:27 -07:00
proto_read_write_test.go fix tests 2022-08-18 00:15:46 -07:00
remote.proto feat(filer): add lazy directory listing for remote mounts (#8615) 2026-03-13 09:36:54 -07:00
s3_lifecycle.proto feat(s3/lifecycle): LifecycleDelete RPC server (#9349) 2026-05-07 15:03:33 -07:00
s3.proto iam: add IAM group management (#8560) 2026-03-09 11:54:32 -07:00
server_address_test.go fix: port in SNI address when using domainName instead of IP for master (#8500) 2026-03-04 07:05:45 -08:00
server_address.go chore: remove ~50k lines of unreachable dead code (#8913) 2026-04-03 16:04:27 -07:00
server_discovery.go chore: execute goimports to format the code (#7983) 2026-01-07 13:06:08 -08:00
shared_values.go remove fixJpgOrientation 2020-06-20 12:50:40 -07:00
volume_server.proto [CheckDisk]: implement disk health detection (#9560) 2026-06-02 09:02:05 -07:00
worker.proto EC encode: place shards via ecbalancer.Place + configurable replica placement (#9623) 2026-05-22 20:22:30 -07:00