andrasbeni commented on code in PR #19208:
URL: https://github.com/apache/pulsar/pull/19208#discussion_r1071554387
##########
pulsar-metadata/src/main/java/org/apache/pulsar/metadata/impl/MetadataStoreFactoryImpl.java:
##########
@@ -18,13 +18,30 @@
*/
package org.apache.pulsar.metadata.impl;
+import static
org.apache.pulsar.metadata.impl.EtcdMetadataStore.ETCD_SCHEME_IDENTIFIER;
+import static
org.apache.pulsar.metadata.impl.LocalMemoryMetadataStore.MEMORY_SCHEME_IDENTIFIER;
+import static
org.apache.pulsar.metadata.impl.RocksdbMetadataStore.ROCKSDB_SCHEME_IDENTIFIER;
+import static
org.apache.pulsar.metadata.impl.ZKMetadataStore.ZK_SCHEME_IDENTIFIER;
+import java.util.HashMap;
+import java.util.Map;
+import lombok.extern.slf4j.Slf4j;
import org.apache.pulsar.metadata.api.MetadataStore;
import org.apache.pulsar.metadata.api.MetadataStoreConfig;
import org.apache.pulsar.metadata.api.MetadataStoreException;
+import org.apache.pulsar.metadata.api.MetadataStoreProvider;
import org.apache.pulsar.metadata.api.extended.MetadataStoreExtended;
+@Slf4j
public class MetadataStoreFactoryImpl {
+ public static final String METADATASTORE_PROVIDERS_PROPERTY =
"pulsar.metadatastore.providers";
+
+ private static Map<String, MetadataStoreProvider> providers;
+
+ static {
+ loadProviders();
Review Comment:
> In tests, you fill this static map which will never be emptied. Carrying
over leftovers from one test to the next...
As you can see in lines 52-55 of MetadataStoreFactoryImplTest.java, no such
thing happens.
I don't like using static state either. But this code is called from more
than a dozen places (100+ including tests).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]