This is an automated email from the ASF dual-hosted git repository. wave pushed a commit to branch dave2wave-branch-14693 in repository https://gitbox.apache.org/repos/asf/pulsar.git
commit 735df92715b74ce70f01a943276bd384cc50245b Merge: 9d8ec43 7d60795 Author: Dave Fisher <[email protected]> AuthorDate: Wed Feb 23 08:20:38 2022 -0800 Merge branch 'master' of https://github.com/apache/pulsar .asf.yaml | 63 ++- .github/workflows/README.md | 52 ++ .github/workflows/ci-cpp-build-windows.yaml | 10 +- .github/workflows/ci-documentbot.yml | 19 + README.md | 4 +- buildtools/pom.xml | 2 +- conf/bkenv.sh | 2 + conf/broker.conf | 3 +- conf/proxy.conf | 2 +- deployment/terraform-ansible/templates/broker.conf | 3 +- distribution/server/src/assemble/LICENSE.bin.txt | 40 +- docker/README.md | 109 ++++ docker/pulsar/Dockerfile | 20 +- docker/pulsar/scripts/apply-config-from-env.py | 6 +- .../apache/bookkeeper/mledger/ManagedLedger.java | 7 + .../bookkeeper/mledger/impl/ManagedCursorImpl.java | 25 +- .../mledger/impl/ManagedLedgerFactoryImpl.java | 2 +- .../bookkeeper/mledger/impl/ManagedLedgerImpl.java | 4 + .../apache/bookkeeper/mledger/impl/OpAddEntry.java | 4 +- .../bookkeeper/mledger/impl/ManagedCursorTest.java | 77 +++ .../impl/ManagedLedgerFactoryShutdownTest.java | 3 +- pom.xml | 46 +- .../rackawareness/BookieRackAffinityMapping.java | 28 +- .../apache/pulsar/broker/ServiceConfiguration.java | 2 +- .../apache/pulsar/broker/admin/AdminResource.java | 39 +- .../pulsar/broker/admin/impl/BrokersBase.java | 33 +- .../broker/admin/impl/PersistentTopicsBase.java | 551 +++++++++++---------- .../pulsar/broker/admin/impl/TenantsBase.java | 4 +- .../loadbalance/impl/LinuxBrokerHostUsageImpl.java | 28 +- .../loadbalance/impl/UniformLoadShedder.java | 7 +- .../pulsar/broker/service/AbstractReplicator.java | 4 + .../pulsar/broker/service/AbstractTopic.java | 112 +++-- .../pulsar/broker/service/BrokerService.java | 3 + .../org/apache/pulsar/broker/service/Consumer.java | 32 +- .../apache/pulsar/broker/service/Dispatcher.java | 12 +- .../pulsar/broker/service/PulsarCommandSender.java | 2 +- .../broker/service/PulsarCommandSenderImpl.java | 4 +- .../apache/pulsar/broker/service/ServerCnx.java | 89 +++- .../apache/pulsar/broker/service/Subscription.java | 2 +- .../pulsar/broker/service/SubscriptionOption.java | 1 + .../SystemTopicBasedTopicPoliciesService.java | 2 +- .../nonpersistent/NonPersistentDispatcher.java | 2 +- .../nonpersistent/NonPersistentSubscription.java | 2 +- .../service/nonpersistent/NonPersistentTopic.java | 7 +- .../service/persistent/DispatchRateLimiter.java | 8 +- .../PersistentDispatcherMultipleConsumers.java | 27 +- .../PersistentDispatcherSingleActiveConsumer.java | 97 +++- .../service/persistent/PersistentReplicator.java | 14 + ...entStreamingDispatcherSingleActiveConsumer.java | 3 +- .../service/persistent/PersistentSubscription.java | 5 +- .../broker/service/persistent/PersistentTopic.java | 47 +- .../prometheus/AggregatedSubscriptionStats.java | 2 + .../stats/prometheus/NamespaceStatsAggregator.java | 81 +-- .../pulsar/broker/stats/prometheus/TopicStats.java | 2 + .../buffer/impl/TopicTransactionBufferState.java | 7 +- .../pendingack/impl/PendingAckHandleImpl.java | 4 +- .../pulsar/broker/web/PulsarWebResource.java | 4 +- .../apache/pulsar/client/impl/RawReaderImpl.java | 5 +- .../pulsar/compaction/CompactedTopicImpl.java | 19 +- .../broker/admin/AdminApiSubscriptionTest.java | 109 ++++ .../apache/pulsar/broker/admin/AdminApiTest.java | 2 + .../broker/admin/CreateSubscriptionTest.java | 18 + .../pulsar/broker/admin/PersistentTopicsTest.java | 30 ++ .../org/apache/pulsar/broker/admin/TopicsTest.java | 8 +- .../pulsar/broker/admin/v1/V1_AdminApiTest.java | 2 + .../broker/auth/MockedPulsarServiceBaseTest.java | 22 +- .../broker/service/BacklogQuotaManagerTest.java | 2 + .../BatchMessageWithBatchIndexLevelTest.java | 96 +++- .../PersistentDispatcherFailoverConsumerTest.java | 19 +- .../service/PersistentMessageFinderTest.java | 8 +- .../broker/service/PersistentTopicE2ETest.java | 3 +- .../pulsar/broker/service/PersistentTopicTest.java | 49 +- .../PrecisTopicPublishRateThrottleTest.java | 17 +- .../pulsar/broker/service/RackAwareTest.java | 116 +++++ .../pulsar/broker/service/ReplicatorTest.java | 59 +++ .../pulsar/broker/service/ServerCnxTest.java | 15 + .../pulsar/broker/service/TopicOwnerTest.java | 5 +- .../StreamingEntryReaderTests.java | 8 +- .../pulsar/broker/stats/PrometheusMetricsTest.java | 40 +- .../pulsar/broker/transaction/TransactionTest.java | 1 + .../api/AuthorizationProducerConsumerTest.java | 62 +++ .../pulsar/client/api/DeadLetterTopicTest.java | 179 +++++++ .../pulsar/client/api/ProducerCreationTest.java | 74 +++ .../client/api/SimpleProducerConsumerTest.java | 2 +- .../client/impl/CompactedOutBatchMessageTest.java | 5 +- .../pulsar/client/impl/MessageRedeliveryTest.java | 133 ++++- .../SchemaCompatibilityCheckTest.java | 5 + .../pulsar/common/policies/data/PublishRate.java | 10 + .../apache/pulsar/client/api/DeadLetterPolicy.java | 5 + pulsar-client-cpp/CMakeLists.txt | 2 +- .../python/pulsar/schema/schema_avro.py | 2 +- .../org/apache/pulsar/admin/cli/CmdBookies.java | 2 +- .../org/apache/pulsar/admin/cli/CmdBrokers.java | 10 +- .../org/apache/pulsar/admin/cli/CmdNamespaces.java | 10 +- .../org/apache/pulsar/admin/cli/CmdPackages.java | 4 +- .../org/apache/pulsar/admin/cli/CmdSchemas.java | 2 +- .../apache/pulsar/admin/cli/CmdTopicPolicies.java | 51 ++ .../org/apache/pulsar/admin/cli/CmdTopics.java | 55 +- .../apache/pulsar/admin/cli/TestCmdPackages.java | 2 - .../pulsar/client/impl/BatchMessageIdImpl.java | 4 + .../org/apache/pulsar/client/impl/ClientCnx.java | 11 +- .../apache/pulsar/client/impl/ConsumerBase.java | 28 ++ .../apache/pulsar/client/impl/ConsumerImpl.java | 316 +++++++----- .../org/apache/pulsar/client/impl/MessageImpl.java | 45 +- .../client/impl/MessagePayloadContextImpl.java | 14 +- .../client/impl/MultiTopicsConsumerImpl.java | 30 +- .../PersistentAcknowledgmentsGroupingTracker.java | 4 +- .../pulsar/client/impl/ProducerBuilderImpl.java | 13 + .../apache/pulsar/client/impl/ProducerImpl.java | 42 +- .../client/impl/ProducerStatsRecorderImpl.java | 33 ++ .../client/impl/PulsarChannelInitializer.java | 7 +- .../pulsar/client/impl/PulsarClientImpl.java | 4 +- .../pulsar/client/impl/ZeroQueueConsumerImpl.java | 2 +- .../impl/conf/ProducerConfigurationData.java | 2 + .../pulsar/client/impl/schema/AbstractSchema.java | 7 +- .../impl/AcknowledgementsGroupingTrackerTest.java | 41 +- .../client/impl/AutoClusterFailoverTest.java | 9 +- .../client/impl/BatchMessageContainerImplTest.java | 69 ++- .../client/impl/ControlledClusterFailoverTest.java | 5 +- .../apache/pulsar/client/impl/MessageImplTest.java | 3 +- .../org/apache/pulsar/client/impl/MessageTest.java | 13 +- .../RoundRobinPartitionMessageRouterImplTest.java | 5 +- .../schema/SupportVersioningAvroSchemaTest.java | 2 +- .../SupportVersioningKeyValueSchemaTest.java | 2 +- .../common/allocator/PulsarByteBufAllocator.java | 24 +- .../policies/data/HierarchyTopicPolicies.java | 5 + .../apache/pulsar/common/protocol/Commands.java | 49 +- .../pulsar/common/util/RelativeTimeUtil.java | 5 +- pulsar-common/src/main/proto/PulsarApi.proto | 9 + .../PulsarByteBufAllocatorDefaultTest.java | 54 +- ...ulsarByteBufAllocatorOomThrowExceptionTest.java | 48 +- pulsar-functions/api-java/pom.xml | 13 + .../apache/pulsar/functions/api/BaseContext.java | 25 +- .../org/apache/pulsar/functions/api/Context.java | 17 +- .../org/apache/pulsar/functions/api/Function.java | 22 +- .../org/apache/pulsar/functions/api/SerDe.java | 2 +- .../apache/pulsar/functions/api/WindowContext.java | 14 +- .../pulsar/functions/api/WindowFunction.java | 6 +- .../apache/pulsar/functions/api/package-info.java | 2 +- .../functions/api/state/ByteBufferStateStore.java | 6 +- .../functions/api/state/CounterStateStore.java | 4 +- .../pulsar/functions/api/state/package-info.java | 2 +- .../pulsar/functions/api/utils/JavaSerDe.java | 8 +- .../api/{state => utils}/package-info.java | 2 +- .../pulsar/functions/api/utils/JavaSerDeTest.java | 1 - .../pulsar/functions/instance/JavaInstance.java | 14 + .../functions/instance/JavaInstanceRunnable.java | 16 +- .../instance/FunctionResultRouterTest.java | 2 +- .../instance/JavaInstanceRunnableTest.java | 6 +- .../api/examples/InitializableFunction.java} | 48 +- .../kubernetes/KubernetesRuntimeFactoryTest.java | 4 +- .../runtime/kubernetes/KubernetesRuntimeTest.java | 4 +- .../functions/utils/SinkConfigUtilsTest.java | 3 +- .../functions/utils/SourceConfigUtilsTest.java | 3 +- .../worker/FunctionRuntimeManagerTest.java | 170 +++---- .../worker/rest/api/FunctionsImplTest.java | 8 +- pulsar-io/data-generator/pom.xml | 12 - .../apache/pulsar/io/mongodb/MongoSinkTest.java | 9 +- .../apache/pulsar/io/mongodb/MongoSourceTest.java | 8 - .../metadata/cache/impl/MetadataCacheImpl.java | 11 +- .../pulsar/metadata/impl/ZKMetadataStore.java | 4 +- pulsar-sql/presto-distribution/LICENSE | 41 +- pulsar-sql/presto-distribution/pom.xml | 12 +- .../proxy/socket/client/PerformanceClient.java | 2 +- .../pulsar/testclient/PerformanceConsumer.java | 2 +- .../pulsar/testclient/PerformanceProducer.java | 2 +- .../pulsar/testclient/PerformanceReader.java | 2 +- .../pulsar/testclient/PerformanceTransaction.java | 39 +- .../Oauth2PerformanceTransactionTest.java | 223 +++++++++ .../authentication/token/credentials_file.json | 5 + .../org/apache/pulsar/websocket/ReaderHandler.java | 10 +- .../apache/pulsar/websocket/ReaderHandlerTest.java | 214 ++++++++ site2/docs/administration-pulsar-manager.md | 50 +- site2/docs/assets/cluster-level-failover-1.png | Bin 0 -> 50187 bytes site2/docs/assets/cluster-level-failover-2.png | Bin 0 -> 62053 bytes site2/docs/assets/cluster-level-failover-3.png | Bin 0 -> 134614 bytes site2/docs/assets/cluster-level-failover-4.png | Bin 0 -> 151813 bytes site2/docs/assets/cluster-level-failover-5.png | Bin 0 -> 110855 bytes site2/docs/client-libraries-cpp.md | 27 +- site2/docs/client-libraries-java.md | 314 +++++++++++- site2/docs/concepts-messaging.md | 16 + site2/docs/deploy-bare-metal.md | 2 +- site2/docs/functions-develop.md | 48 ++ site2/docs/getting-started-docker.md | 1 + site2/docs/reference-cli-tools.md | 14 +- site2/docs/reference-configuration.md | 18 +- site2/docs/schema-manage.md | 12 +- site2/docs/security-tls-keystore.md | 28 +- site2/docs/sql-deployment-configurations.md | 23 +- site2/docs/txn-why.md | 2 +- site2/tools/publish-website.sh | 7 +- site2/website-next/docs/deploy-bare-metal.md | 2 +- site2/website-next/docs/reference-cli-tools.md | 8 +- .../version-2.7.2/deploy-bare-metal.md | 2 +- .../version-2.8.0/deploy-bare-metal.md | 2 +- .../version-2.8.1/deploy-bare-metal.md | 2 +- .../version-2.8.2/deploy-bare-metal.md | 2 +- .../version-2.9.0/deploy-bare-metal.md | 2 +- .../version-2.9.1/deploy-bare-metal.md | 2 +- site2/website/siteConfig.js | 75 ++- .../version-2.7.0/reference-configuration.md | 17 +- .../version-2.7.0/sql-deployment-configurations.md | 10 + .../version-2.7.1/reference-configuration.md | 17 +- .../version-2.7.1/sql-deployment-configurations.md | 10 + .../version-2.7.2/deploy-bare-metal.md | 2 +- .../version-2.7.2/reference-configuration.md | 17 +- .../version-2.7.2/sql-deployment-configurations.md | 10 + .../version-2.7.3/reference-configuration.md | 17 +- .../version-2.7.3/sql-deployment-configurations.md | 11 +- .../version-2.7.4/reference-configuration.md | 17 +- .../version-2.7.4/sql-deployment-configurations.md | 10 + .../version-2.8.0/deploy-bare-metal.md | 2 +- .../version-2.8.0/reference-configuration.md | 17 +- .../version-2.8.0/sql-deployment-configurations.md | 10 + .../version-2.8.1/deploy-bare-metal.md | 2 +- .../version-2.8.1/reference-configuration.md | 17 +- .../version-2.8.1/sql-deployment-configurations.md | 10 + .../version-2.8.2/deploy-bare-metal.md | 2 +- .../version-2.8.2/reference-configuration.md | 17 +- .../version-2.8.2/sql-deployment-configurations.md | 11 +- .../version-2.9.0/deploy-bare-metal.md | 2 +- .../version-2.9.0/reference-configuration.md | 17 +- .../version-2.9.0/sql-deployment-configurations.md | 10 + .../version-2.9.1/deploy-bare-metal.md | 2 +- .../version-2.9.1/reference-configuration.md | 17 +- .../version-2.9.1/sql-deployment-configurations.md | 10 + site2/website/versions.json | 1 + src/assembly-source-package.xml | 4 +- testmocks/pom.xml | 3 +- tests/bc_2_0_0/pom.xml | 2 +- tests/bc_2_0_1/pom.xml | 2 +- tests/bc_2_6_0/pom.xml | 4 +- .../docker-images/latest-version-image/Dockerfile | 11 + .../latest-version-image/conf/bookie.conf | 1 + .../latest-version-image/conf/broker.conf | 2 +- .../conf/functions_worker.conf | 2 +- .../latest-version-image/conf/global-zk.conf | 2 +- .../latest-version-image/conf/local-zk.conf | 2 +- .../latest-version-image/conf/presto_worker.conf | 3 +- .../latest-version-image/conf/proxy.conf | 2 +- tests/integration/pom.xml | 2 +- .../SchemaCompatibilityStrategyTest.java | 78 +-- .../integration/functions/PulsarFunctionsTest.java | 31 ++ .../functions/java/PulsarFunctionsJavaTest.java | 6 + .../integration/suites/PulsarCliTestSuite.java | 39 +- .../topologies/PulsarClusterTestBase.java | 7 +- .../integration/src/test/resources/pulsar-cli.xml | 1 + tests/pulsar-client-admin-shade-test/pom.xml | 2 +- tests/pulsar-client-all-shade-test/pom.xml | 2 +- tests/pulsar-client-shade-test/pom.xml | 2 +- tiered-storage/jcloud/pom.xml | 13 - .../offload/jcloud/impl/MockManagedLedger.java | 5 + 252 files changed, 4566 insertions(+), 1547 deletions(-)
