View Revisions: Issue #1497
Summary | 0001497: Missing primary key with Stream Lobs causes initial load to fail | ||
---|---|---|---|
Revision | 2013-12-19 17:53 by elong | ||
Description | If a primary is missing from the table, and the table includes LOB and/or float data type columns, updates will not be captured and synced on SQL Server. When no primary is defined, SymmetricDS will use all columns as a synthetic primary key, which is used for joining inserted and deleted virtual tables in the trigger to find new and old values. Joining on columns like LOB and float will not result in an equal comparison, so they should be excluded. |
||
Revision | 2014-01-02 21:13 by |
||
Description | If a primary is missing from the table, and the table includes LOB and/or float data type columns, initial loads on postgres and sqlserver (and possible others) will fail since the captured value for teh blob is null. Thus, the wheres clause tries to retreive the blob with a wheres clause that also says blob-col=null, so it retrieves nothing. | ||
Revision | 2013-12-19 17:53 by elong | ||
Steps To Reproduce | 1. Setup two-way sync with two SQL Server databases 2. Create a table with no primary and columns including float and clob 3. Setup a Trigger for the table 4. Update a row in the table Expected: the data should be captured and synced. Actual: the data is not capture. --Alternate-- 4. Perform an initial load Expected: table should load, including LOB columns Actual: table loads, but LOB columns are null |
||
Revision | 2014-01-02 21:13 by |
||
Steps To Reproduce | 1. Setup sync with two SQL Server databases 2. Create a table with no primary and columns including blob 3. Setup a Trigger for the table 4. Initial load the table with Stream lobs for the table set. Expected: the data should be loaded with the blob data Actual: the data rows are loaded, but blob data is null. |