You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<li><strong>Explicit over implicit</strong>: All type conversions are now explicit through the codec system</li>
6114
6114
<li><strong>Better distributed computing</strong>: Per-table job coordination with improved error handling</li>
6115
6115
<li><strong>Object storage integration</strong>: Native support for large arrays and files</li>
6116
-
<li><strong>Future-proof architecture</strong>: Portable types preparing for PostgreSQL backend support</li>
6116
+
<li><strong>Multi-backend support</strong>: Portable types enabling PostgreSQL backend (added in 2.1)</li>
6117
6117
</ul>
6118
6118
<h3id="breaking-changes-at-a-glance">Breaking Changes at a Glance<aclass="headerlink" href="#breaking-changes-at-a-glance" title="Permanent link">¶</a></h3>
6119
6119
<p>If you're upgrading from legacy DataJoint, these changes require code updates:</p>
<p><strong>Character encoding and collation:</strong> DataJoint 2.0 standardizes on UTF-8 encoding with binary collation (case-sensitive comparisons). This is configured <strong>server-wide</strong> and is assumed by DataJoint:</p>
7625
7625
<ul>
7626
7626
<li><strong>MySQL:</strong><code>utf8mb4</code> character set with <code>utf8mb4_bin</code> collation</li>
7627
-
<li><strong>PostgreSQL (future):</strong><code>UTF8</code> encoding with <code>C</code> collation</li>
7627
+
<li><strong>PostgreSQL (new in 2.1):</strong><code>UTF8</code> encoding with <code>C</code> collation</li>
7628
7628
</ul>
7629
7629
<p>Like timezone handling, encoding is infrastructure configuration, not part of the data model. Ensure your MySQL server is configured with these defaults before migration.</p>
<p>DataJoint 2.0 introduces portable type aliases (<code>int64</code>, <code>float64</code>, etc.) that prepare the codebase for <strong>PostgreSQL backend compatibility</strong> in a future release. Migration to core types ensures your schemas will work seamlessly when Postgres support is available.</p>
<p>DataJoint 2.0 introduced portable type aliases (<code>int64</code>, <code>float64</code>, etc.) that enable <strong>PostgreSQL backend compatibility</strong>, which was added in DataJoint 2.1. Migration to core types ensures your schemas work seamlessly on both MySQL and PostgreSQL backends.</p>
7640
7640
<p><strong>String quoting in restrictions:</strong> MySQL and PostgreSQL handle quotes differently. MySQL allows both single and double quotes for string literals, but PostgreSQL interprets double quotes as identifier (column) references. For PostgreSQL compatibility, replace double quotes with single quotes inside SQL restriction strings:</p>
7641
7641
<divclass="highlight"><pre><span></span><code><spanclass="c1"># Before (MySQL only)</span>
@@ -17428,7 +17428,7 @@ Upgrade existing pipelines from legacy DataJoint (pre-2.0) to DataJoint 2.0.
17428
17428
**Character encoding and collation:** DataJoint 2.0 standardizes on UTF-8 encoding with binary collation (case-sensitive comparisons). This is configured **server-wide** and is assumed by DataJoint:
17429
17429
17430
17430
- **MySQL:** `utf8mb4` character set with `utf8mb4_bin` collation
17431
-
- **PostgreSQL (future):** `UTF8` encoding with `C` collation
17431
+
- **PostgreSQL (new in 2.1):** `UTF8` encoding with `C` collation
17432
17432
17433
17433
Like timezone handling, encoding is infrastructure configuration, not part of the data model. Ensure your MySQL server is configured with these defaults before migration.
17434
17434
@@ -17442,9 +17442,9 @@ DataJoint 2.0 is licensed under **Apache 2.0** (previously LGPL-2.1).
17442
17442
17443
17443
No action required—the new license is more permissive.
17444
17444
17445
-
### Future Backend Support
17445
+
### PostgreSQL Backend Support
17446
17446
17447
-
DataJoint 2.0 introduces portable type aliases (`int64`, `float64`, etc.) that prepare the codebase for **PostgreSQL backend compatibility** in a future release. Migration to core types ensures your schemas will work seamlessly when Postgres support is available.
17447
+
DataJoint 2.0 introduced portable type aliases (`int64`, `float64`, etc.) that enable **PostgreSQL backend compatibility**, which was added in DataJoint 2.1. Migration to core types ensures your schemas work seamlessly on both MySQL and PostgreSQL backends.
17448
17448
17449
17449
**String quoting in restrictions:** MySQL and PostgreSQL handle quotes differently. MySQL allows both single and double quotes for string literals, but PostgreSQL interprets double quotes as identifier (column) references. For PostgreSQL compatibility, replace double quotes with single quotes inside SQL restriction strings:
0 commit comments