SPI\_start\_transaction

|   SPI\_start\_transaction   |                          |                            |                  |                            |
|:---------------------------:|--------------------------|----------------------------|------------------|----------------------------|
|[Prev](spi-spi-rollback.html)|[Up](spi-transaction.html)|47.4. Transaction Management|[Home](index.html)| [Next](spi-visibility.html)|

---

[]()

## SPI\_start\_transaction

SPI\_start\_transaction — start a new transaction

## Synopsis

```
void SPI_start_transaction(void)

```

## Description

`SPI_start_transaction` starts a new transaction. It can only be called after `SPI_commit` or `SPI_rollback`, as there is no transaction active at that point. Normally, when an SPI-using procedure is called, there is already a transaction active, so attempting to start another one before closing out the current one will result in an error.

 This function can only be executed if the SPI connection has been set as nonatomic in the call to `SPI_connect_ext`.

---

|[Prev](spi-spi-rollback.html)|[Up](spi-transaction.html)|   [Next](spi-visibility.html)   |
|:----------------------------|:------------------------:|--------------------------------:|
|        SPI\_rollback        |    [Home](index.html)    | 47.5. Visibility of Data Changes|

 // \<![CDATA[ \<-- For SVG support if ('WebSocket' in window) { (function() { function refreshCSS() { var sheets = [].slice.call(document.getElementsByTagName("link")); var head = document.getElementsByTagName("head")[0]; for (var i = 0; i \< sheets.length; ++i) { var elem = sheets[i]; head.removeChild(elem); var rel = elem.rel; if (elem.href && typeof rel != "string" || rel.length == 0 || rel.toLowerCase() == "stylesheet") { var url = elem.href.replace(/(&|\\?)\_cacheOverride=\\d+/, ''); elem.href = url + (url.indexOf('?') \>= 0 ? '&' : '?') + '\_cacheOverride=' + (new Date().valueOf()); } head.appendChild(elem); } } var protocol = window.location.protocol === 'http:' ? 'ws://' : 'wss://'; var address = protocol + window.location.host + window.location.pathname + '/ws'; var socket = new WebSocket(address); socket.onmessage = function(msg) { if (msg.data == 'reload') window.location.reload(); else if (msg.data == 'refreshcss') refreshCSS(); }; console.log('Live reload enabled.'); })(); } // ]]\>