@Quiesce — Waits for all queued export and DR data to be processed or saved to disk
@Quiesce
The @Quiesce system procedure waits for any pending export or database replication (DR) data to be cleared before returning to the calling application. @Quiesce waits for export data to either be written to the export connector or to the export overflow on disk. Similarly, it waits for pending DR data to be written to DR overflow then does an fsync to ensure all disk I/O is completed. Note that a graceful shutdown (using the voltadmin shutdown command without the --force argument) performs a quiesce as part of the shutdown process.
If export and DR are not enabled, the procedure returns immediately.
Returns one VoltTable with one row.
Name | Datatype | Description |
---|---|---|
STATUS | BIGINT | Always returns the value zero (0) indicating success. |
The following example calls @Quiesce using sqlcmd:
$ sqlcmd 1> exec @Quiesce;
The following program example uses drain and @Quiesce to complete any asynchronous transactions and clear the export and DR queues before shutting down the database.
// Complete all outstanding activities try { client.drain(); client.callProcedure("@Quiesce"); } catch (Exception e) { e.printStackTrace(); } // Shutdown the database. try { client.callProcedure("@Shutdown"); } // We expect an exception when the connection drops. // Report any other exception. catch (org.voltdb.client.ProcCallException e) { } catch (Exception e) { e.printStackTrace(); }