View Issue Details

IDProjectCategoryView StatusLast Update
0006602SymmetricDSBugpublic2024-10-01 18:00
Reporterelong Assigned Toelong  
Prioritynormal 
Status closedResolutionfixed 
Product Version3.15.0 
Target Version3.15.9Fixed in Version3.15.9 
Summary0006602: MySQL/MariaDB treat bit type with size greater than 1 as integer
DescriptionFor MySQL and MariaDB, treat the BIT type with a size greater than 1 as INTEGER for the purpose of loading data into the column. Older drivers, like the MariaDB driver 1.1, would accept a bind type of BIT with an INTEGER argument, but newer versions started following the JDBC specification that BIT is a boolean of 1 or 0. Add an unofficial parameter of db.treat.bit.as.integer.enabled (in case it needs turned off) and default it to true for MySQL/MariaDB, so existing deployments can upgrade to this version and work as usual.

We don't currently officially support the "bit string" or "bit array" types. They were dropped from the SQL/2008 standard and are considered vendor extensions. The JDBC specification doesn't explain how mapping of these types should work either, so each driver could be different. This is a short-term issue to get things working for deployments that depended it. Longer term, we should add official cross platform support for "bit string" to MySQL/MariaDB, PostgreSQL, and SQL Anywhere.
Tagsdata type, dialect: mysql/mariadb

Activities

There are no notes attached to this issue.

Related Changesets

SymmetricDS: 3.15 2bb6af90

2024-10-01 17:16:56

admin

Details Diff
0006602: MySQL/MariaDB treat bit type with size greater than 1 as
integer
Affected Issues
0006602
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/common/ParameterConstants.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/load/AbstractDataLoaderFactory.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/load/DefaultDataLoaderFactory.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/writer/DatabaseWriterSettings.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/writer/DefaultDatabaseWriter.java Diff File

SymmetricDS: 3.16 c7e2f688

2024-10-01 17:16:56

admin

Details Diff
0006602: MySQL/MariaDB treat bit type with size greater than 1 as
integer
Affected Issues
0006602
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/common/ParameterConstants.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/load/AbstractDataLoaderFactory.java Diff File
mod - symmetric-core/src/main/java/org/jumpmind/symmetric/load/DefaultDataLoaderFactory.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/writer/DatabaseWriterSettings.java Diff File
mod - symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/writer/DefaultDatabaseWriter.java Diff File

Issue History

Date Modified Username Field Change
2024-10-01 17:15 elong New Issue
2024-10-01 17:15 elong Status new => assigned
2024-10-01 17:15 elong Assigned To => elong
2024-10-01 17:15 elong Tag Attached: data type
2024-10-01 17:15 elong Tag Attached: dialect: mysql/mariadb
2024-10-01 17:17 elong Status assigned => resolved
2024-10-01 17:17 elong Resolution open => fixed
2024-10-01 17:17 elong Fixed in Version => 3.15.9
2024-10-01 18:00 admin Changeset attached => SymmetricDS 3.15 2bb6af90
2024-10-01 18:00 admin Changeset attached => SymmetricDS 3.16 c7e2f688
2024-10-01 19:48 admin Status resolved => closed