Author: brane
Date: Fri Jan 16 21:45:36 2026
New Revision: 1931379
Log:
On the better-pristines branch: Extend the PRISTINE table for format 33.
* subversion/libsvn_wc/wc-metadata.sql
(CREATE TABLE PRISTINE): Update documentation.
(STMT_UPGRADE_TO_33): Update the documentaiton and add another column, the
Adler-32 checksum of the stored, perhaps compressed, pristine contents.
Modified:
subversion/branches/better-pristines/subversion/libsvn_wc/wc-metadata.sql
Modified: subversion/branches/better-pristines/subversion/libsvn_wc/wc-metadata.sql
==============================================================================
--- subversion/branches/better-pristines/subversion/libsvn_wc/wc-metadata.sql Fri Jan 16 19:43:42 2026 (r1931378)
+++ subversion/branches/better-pristines/subversion/libsvn_wc/wc-metadata.sql Fri Jan 16 21:45:36 2026 (r1931379)
@@ -86,9 +86,9 @@ CREATE UNIQUE INDEX I_LOCAL_ABSPATH ON W
/* The PRISTINE table keeps track of pristine texts. Each row describes a
single pristine text. The text itself is stored in the database as a
- (usually compressed) BLOB or in a file whose name is derived from the
- 'checksum' column. Each pristine text is referenced by any number of rows
- in the NODES and ACTUAL_NODE tables.
+ usually compressed BLOB (since format 33) or in a file whose name is
+ derived from the 'checksum' and other columns. Each pristine text is
+ referenced by any number of rows in the NODES and ACTUAL_NODE tables.
*/
CREATE TABLE PRISTINE (
/* The SHA-1 checksum of the pristine text. This is a unique key. The
@@ -780,11 +780,17 @@ INSERT OR IGNORE INTO SETTINGS SELECT id
PRAGMA user_version = 32;
/* ------------------------------------------------------------------------- */
-/* Format 33 adds the 'contents' BLOB to the PRISTINES table. When its value
- is NULL, the pristine text is stored in a file on disk. Otherwise, the
- contents of the BLOB are the (possibly compressed) pristine text. */
-
+/* Format 33 adds the 'contents BLOB' and 'contents_check INTEGER'
+ columns to the PRISTINES table. When 'contents' is NULL, the pristine
+ text is stored in a file on disk. Otherwise, the contents of the BLOB
+ are the possibly compressed pristine text. 'contents_check' is the
+ Adler-32 checksum of the actual data stored in the pristine contents,
+ not of the source data, unlike 'checksum' and 'md5_checksum'. This
+ difference is important when the pristine contents are compressed.
+ */
-- STMT_UPGRADE_TO_33
+ALTER TABLE PRISTINE ADD COLUMN contents_check INTEGER NOT NULL
+ CHECK (contents_check >= 0 AND contents_check < 4294967296)); /* 2^32 */
ALTER TABLE PRISTINE ADD COLUMN contents BLOB;
PRAGMA user_version = 33;
@@ -812,12 +818,12 @@ PRAGMA user_version = 34; */
*
* * subversion/tests/libsvn_wc/wc-queries-test.c
* (schema_statements, create_memory_db)
- * * The implementation of svn_client_latest_wc_version()
+ * * The implementation of svn_wc__version_info_from_format()
* * The implementation of svn_wc__format_from_version()
- * * The implementation of svn_client_get_wc_formats_supported()
* * subversion/tests/cmdline/svntest/main.py:wc_format()
* * The comment above the comment above SVN_WC__VERSION
* * The value of SVN_WC__VERSION, if needed
+ * * The value of SVN_WC__VERSIONS_ALSO_RAN, also if needed
*/
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.