Обновлена 9 ноября 2026 г. в 13:01
FAQ
Q: Получаю ошибку о нехватке зависимостей no required module provides package, например:
protocol/consumer_grpc.pb.go:11:2: no required module provides package google.golang.org/grpc; to add it:go get google.golang.org/grpcprotocol/consumer_grpc.pb.go:12:2: no required module provides package google.golang.org/grpc/codes; to add it:go get google.golang.org/grpc/codesprotocol/consumer_grpc.pb.go:13:2: no required module provides package google.golang.org/grpc/status; to add it:go get google.golang.org/grpc/statusprotocol/consumer.pb.go:10:2: no required module provides package google.golang.org/protobuf/reflect/protoreflect; to add it:go get google.golang.org/protobuf/reflect/protoreflectprotocol/consumer.pb.go:11:2: no required module provides package google.golang.org/protobuf/runtime/protoimpl; to add it:go get google.golang.org/protobuf/runtime/protoimplcmd/producer/main.go:9:2: no required module provides package google.golang.org/grpc/credentials/insecure; to add it:go get google.golang.org/grpc/credentials/insecure
A: Выполните команду go mod tidy для установки всех зависимостей.
Q: Получаю ошибку о некорректном bucket_id, например:
# String sharding key.$ grpcurl -plaintext -format text -d 'queue:"queue" sharding_key:"abc" messages:{ payload:"absd" }' localhost:18182 tarantool.queue_ee.Producer/ProduceERROR:Code: InternalMessage: failed to publish messages to tarantool: bucket id is out of range: 0 (total 1000)
A: Возможно, в системе настроен режим статического шардирования,
при котором бакеты с данными распределяются по репликам вручную. В таком случае указываемый sharding_key должен
соответствовать одному из настроенных bucket_id:
# String sharding key.$ grpcurl -plaintext -format text -d 'queue:"queue" sharding_key:"1" messages:{ payload:"absd" }' localhost:18182 tarantool.queue_ee.Producer/Produce
Q: Получаю ошибку публикации сообщения
failed to publish messages to tarantool: storage.produce error: id (*): payload may be corrupted:
$ grpcurl -plaintext -format text -d 'queue:"dedup" messages:{ payload:"corruptd" deduplication_key:"dk1" }' localhost:18182 tarantool.queue_ee.Producer/ProduceERROR:Code: InternalMessage: failed to publish messages to tarantool: storage.produce error: id (7358133729337802752): payload may be corrupted (CustomError, code 0x0), see ..../code/tarantool/message-queue-ee/app/queue.lua line 805
A: Включен режим расширенной дедупликации.
Система обнаружила 2 сообщения с одинаковым deduplication_key, но разным значением в payload.
Была ли статья полезна?