Massive and Impressive. Do you need help? Il giorno mar 20 ago 2024 alle ore 17:30 Christofer Dutz < christofer.d...@c-ware.de> ha scritto:
> Hi all, > > So, in order to sensibly tackle the removal of singletons I have compiled > a list of all Singletons (at least all classes that have a public static > getInstance() method). > I so-far count 94 classes. > > In a next step I would try to add which type depends on which singleton to > that. The result should be a directed graph, that shows segments that could > be sensibly refactored. > > I would propose to do “island” by “island”. > > I guess it’s going to be an interesting process … idealy we could use some > tool to analyse the graph. > > > Chris > > > PS: Here’s the list of the singleton classes: > > SystemPropertiesHandler > SSLClient > AsyncConfigNodeHeartbeatClientPool > AsyncDataNodeHeartbeatClientPool > CnToCnInternalServiceAsyncRequestManager > CnToDnInternalServiceAsyncRequestManager > SyncConfigNodeClientPool > SyncDataNodeClientPool > ConfigNodeDescriptor > ConfigNodeRemoveCheck > SystemPropertiesHandler > PipeConfigNodeSubtaskExecutor > PipeConfigNodeListenerMetrics > PipeConfigNodeReceiverMetrics > PipeConfigNodeRemainingTimeMetrics > PipeConfigRegionConnectorMetrics > PipeConfigRegionExtractorMetrics > PipeProcedureMetrics > PipeTemporaryMetaMetrics > ConfigMNodeFactory > ProcedureFactory > ConfigNode > IoTDBDescriptor > IoTDBStartCheck > IoTDBRestServiceDescriptor > DataRegionConsensusImpl > SchemaRegionConsensusImpl > PipeSubtaskExecutorManager > PipeInsertionDataNodeListener > PipeTimePartitionListener > PipeAssignerMetrics > PipeDataNodeMetrics > PipeDataNodeReceiverMetrics > PipeDataNodeRemainingEventAndTimeMetrics > PipeDataRegionConnectorMetrics > PipeDataRegionExtractorMetrics > PipeHeartbeatEventMetrics > PipeProcessorMetrics > PipeResourceMetrics > PipeSchemaRegionConnectorMetrics > PipeSchemaRegionExtractorMetrics > PipeSchemaRegionListenerMetrics > PipeWALInsertNodeCacheMetrics > PipeCombineHandlerManager > ConfigNodeClientManager > ConfigNodeInfo > DnToCnInternalServiceAsyncRequestManager > DataNodeExternalServiceAsyncRequestManager > DataNodeMPPServiceAsyncRequestManager > DnToDnInternalServiceAsyncRequestManager > UserCache > SessionManager > DataNodeRegionManager > MPPDataExchangeService > DriverScheduler > LoadTsFileMemoryManager > DataNodeTTLCache > SchemaEngine > DataNodeTableCache > ClusterTemplateManager > DataNode > DataNodeInternalRPCService > MQTTService > RPCService > RegionMigrateService > RestService > TemporaryQueryDataFileService > CompactionMetrics > FileMetrics > WritingMetrics > CacheHitRatioMonitor > CompactionScheduleTaskManager > CompactionTaskManager > FlushManager > WALManager > TierManager > TsFileAndModSettleTool > TriggerClassLoaderManager > TriggerManagementService > OpenFileNumUtil > ModsSerializer > StringSerializer > WindowEvaluationTaskPoolManager > IoTDBMetricManager > IoTDBJmxReporter > IoTDBMetricObjNameFactory > MetricConfigDescriptor > SystemMetrics > PipeConfig > MetricService > TriggerExecutableManager > UDFClassLoaderManager > UDFExecutableManager > UDFManagementService > -- Life is a chess game - Anonymous.