public void mayActivateSnapshotDaemon ( ) { SnapshotSchedule schedule = m_catalogContext . get ( ) . database . getSnapshotschedule ( ) . get ( "default" ) ; if ( schedule != null ) { final ListenableFuture < Void > future = m_snapshotDaemon . mayGoActiveOrInactive ( schedule ) ; future . addListener ( new Runnable ( ) { @ Override public void run ( ) { try { future . get ( ) ; } catch ( InterruptedException e ) { VoltDB . crashLocalVoltDB ( "Failed to make SnapshotDaemon active" , false , e ) ; } catch ( ExecutionException e ) { VoltDB . crashLocalVoltDB ( "Failed to make SnapshotDaemon active" , false , e ) ; } } } , CoreUtils . SAMETHREADEXECUTOR ) ; } }
in the cluster make our SnapshotDaemon responsible for snapshots