<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>PowerShell on Percona Community</title><link>https://percona.community/tags/powershell/</link><description>Recent content in PowerShell on Percona Community</description><generator>Hugo 0.168.0</generator><language>en</language><lastBuildDate>Tue, 27 Oct 2026 15:07:00 +0000</lastBuildDate><atom:link href="https://percona.community/tags/powershell/index.xml" rel="self" type="application/rss+xml"/><item><title>Catch Lost Updates Before Release: A Two-Client PostgreSQL Test on Windows</title><link>https://percona.community/blog/2026/10/27/catch-lost-updates-before-release/</link><pubDate>Tue, 27 Oct 2026 15:07:00 +0000</pubDate><guid isPermaLink="true">https://percona.community/blog/2026/10/27/catch-lost-updates-before-release/</guid><description>&lt;p&gt;Two successful reservations of three units should reduce stock from ten to four. A read-calculate-write operation can instead leave seven: both clients overwrite the row with a value calculated from an earlier read. That mismatch is what this lab checks. The release check is an invariant:&lt;/p&gt;
&lt;div class="code-block"&gt;
&lt;div class="code-block__header"&gt;&lt;span class="code-block__lang"&gt;text&lt;/span&gt;&lt;button class="code-block__copy" type="button" data-copy-target="codeblock-0" aria-label="Copy code to clipboard"&gt;
&lt;span class="code-block__copy-default"&gt;Copy&lt;/span&gt;
&lt;span class="code-block__copy-success" aria-hidden="true"&gt;Copied!&lt;/span&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;div class="code-block__content" id="codeblock-0"&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;final stock =
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; starting stock -
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; 3 × committed reservations&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Keep that assertion beside a controlled two-client test before releasing reservation code. The lab uses one inventory row at READ COMMITTED, so the stock change is easy to compare with committed reservations. Multi-SKU transactions, request idempotency, and Serializable retries need separate tests. This lab measures no throughput.&lt;/p&gt;</description></item><item><title>Prove the Backup: A Percona Distribution for PostgreSQL Restore Drill on Windows</title><link>https://percona.community/blog/2026/09/14/percona-postgresql-restore-drill-on-windows/</link><pubDate>Mon, 14 Sep 2026 11:00:00 +0000</pubDate><guid isPermaLink="true">https://percona.community/blog/2026/09/14/percona-postgresql-restore-drill-on-windows/</guid><description>&lt;p&gt;A backup is only useful if it can be restored. This lab seeds a source database, takes a logical archive, deliberately deletes the source database, restores into a clean target, and checks the recovered state. Percona Distribution for PostgreSQL does not provide a native Windows package. Windows is only the Docker Desktop host; PostgreSQL and its utilities run in Linux containers.&lt;/p&gt;
&lt;p&gt;The current Percona 17 Docker documentation uses &lt;code&gt;percona/percona-distribution-postgresql:17.11&lt;/code&gt;, requires &lt;code&gt;POSTGRES_PASSWORD&lt;/code&gt;, and exposes PostgreSQL on container port 5432. Docker Desktop is the recommended way to obtain Docker Engine, the CLI, and Compose on Windows. &lt;a href="https://docs.percona.com/postgresql/17/docker.html" target="_blank" rel="noopener noreferrer"&gt;Percona Docker guide&lt;/a&gt; · &lt;a href="https://docs.docker.com/compose/install/" target="_blank" rel="noopener noreferrer"&gt;Docker Compose installation&lt;/a&gt;&lt;/p&gt;</description></item></channel></rss>