View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001474 | SymmetricDS | Bug | public | 2013-11-24 13:47 | 2014-02-03 01:53 |
Reporter | Al_ | Assigned To | chenson | ||
Priority | low | ||||
Status | closed | Resolution | fixed | ||
Product Version | 3.5.10 | ||||
Target Version | 3.5.12 | Fixed in Version | 3.5.12 | ||
Summary | 0001474: sync blocks with java error when a field with affinity 'INTEGER' contains a (empty) string | ||||
Description | When synchronizing (or loading initial data) two sqlite3 databases, the client (that pulls synchronization data from the server) reports an error and does not further load initial data when a field with INTEGER affinity in the server database contains a (empty) string. The error message is "java.lang.NumberFormatException: Zero length BigInteger". | ||||
Steps To Reproduce | Prepare two sqlite3 databases, client and server, to synchronize table W. My create statement for that table: "CREATE TABLE W (WNr INTEGER PRIMARY KEY AUTOINCREMENT, Wn TEXT COLLATE NOCASE, Wb TEXT COLLATE NOCASE, FNr INTEGER, SNr INTEGER, R TEXT COLLATE NOCASE, A TEXT, L INTEGER, T INTEGER, metaUUID NONE, metaSource TEXT, metaDate INTEGER);" Start symmetricDS on server and client, register client node. The following sql insert statement on the server database leads to the error on the client symmetricDS installation: "INSERT INTO W (Wn, T) VALUES('testvalue3', '');" | ||||
Additional Information | Storing (zero-length or other) strings in an INTEGER-affinity field is acceptable in sqlite3, see https://www.sqlite.org/faq.html#q3 For further details on reproducing this bug see also https://sourceforge.net/p/symmetricds/discussion/739236/thread/651fe476/ The priority of this bug is for me 'low', as I only store empty strings, i.e., I can replace them by NULL. Users that store actual text in such fields are strongly impacted. | ||||
Tags | No tags attached. | ||||
SymmetricDS: master 7386f42f 2013-11-24 13:26:33 Details Diff |
0001474: sync blocks with java error when a field with affinity 'INTEGER' contains a (empty) string |
Affected Issues 0001474 |
|
mod - symmetric-android/src/main/java/org/jumpmind/symmetric/android/AndroidDatabasePlatform.java | Diff File | ||
mod - symmetric-db/src/main/java/org/jumpmind/db/platform/AbstractDatabasePlatform.java | Diff File | ||
mod - symmetric-jdbc/src/main/java/org/jumpmind/db/platform/sqlite/SqliteDatabasePlatform.java | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2013-11-24 13:47 | Al_ | New Issue | |
2013-11-24 18:26 | chenson | Assigned To | => chenson |
2013-11-24 18:26 | chenson | Status | new => assigned |
2013-11-24 18:27 | chenson | Fixed in Version | => 3.6.0 |
2013-11-24 18:27 | chenson | Target Version | => 3.6.0 |
2013-11-24 18:27 | chenson | Status | assigned => resolved |
2013-11-24 18:27 | chenson | Resolution | open => fixed |
2013-11-24 23:47 | chenson | Fixed in Version | 3.6.0 => 3.5.12 |
2013-11-24 23:47 | chenson | Target Version | 3.6.0 => 3.5.12 |
2013-12-18 15:55 | chenson | Status | resolved => closed |
2014-02-03 01:53 | Changeset attached | => SymmetricDS trunk r7779 | |
2015-07-31 01:49 | chenson | Changeset attached | => SymmetricDS master 7386f42f |