@Override protected void onActorStarting() { final LogStream logStream = streamProcessorContext.getLogStream(); final MetricsManager metricsManager = actorScheduler.getMetricsManager(); final String partitionId = String.valueOf(logStream.getPartitionId()); final String processorName = getName(); metrics = new StreamProcessorMetrics(metricsManager, processorName, partitionId); logStreamReader.wrap(logStream); logStreamWriter.wrap(logStream); try { snapshotPosition = recoverFromSnapshot(logStream.getCommitPosition(), logStream.getTerm()); lastSourceEventPosition = seekFromSnapshotPositionToLastSourceEvent(); final ZeebeDb zeebeDb = snapshotController.openDb(); streamProcessor = streamProcessorFactory.createProcessor(zeebeDb); streamProcessor.onOpen(streamProcessorContext); } catch (final Exception e) { onFailure(); LangUtil.rethrowUnchecked(e); } }
@Override protected void onActorStarting() { final LogStream logStream = streamProcessorContext.getLogStream(); final MetricsManager metricsManager = actorScheduler.getMetricsManager(); final String partitionId = String.valueOf(logStream.getPartitionId()); final String processorName = getName(); metrics = new StreamProcessorMetrics(metricsManager, processorName, partitionId); logStreamReader.wrap(logStream); logStreamWriter.wrap(logStream); try { snapshotPosition = recoverFromSnapshot(logStream.getCommitPosition(), logStream.getTerm()); lastSourceEventPosition = seekFromSnapshotPositionToLastSourceEvent(); final ZeebeDb zeebeDb = snapshotController.openDb(); streamProcessor = streamProcessorFactory.createProcessor(zeebeDb); streamProcessor.onOpen(streamProcessorContext); } catch (final Exception e) { onFailure(); LangUtil.rethrowUnchecked(e); } }