Skip to content

Commit 9c1bb6c

Browse files
author
Praveen Narayanappa
committed
Fixing GitHub issues #134, #135, #136
1 parent 3fcc274 commit 9c1bb6c

3 files changed

Lines changed: 14 additions & 6 deletions

File tree

IBM_DB_Adapter/ibm_db/CHANGES

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
Change Log
22
==============
33

4+
2022/10/06 (IBM_DB adapter 5.3.2, driver 3.0.6)
5+
- Allowed all rails versions < 6.2 in gemspec, replaced limit clause with FETCH FIRST n ROWS
6+
47
2022/09/21 (IBM_DB adapter 5.3.1, driver 3.0.6)
58
- Yanked version 5.3.0 as package includes clidriver
69

IBM_DB_Adapter/ibm_db/IBM_DB.gemspec

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ require 'pathname'
1010
Gem::Specification.new do |spec|
1111
# Required spec
1212
spec.name = 'ibm_db'
13-
spec.version = '5.3.1'
13+
spec.version = '5.3.2'
1414
spec.summary = 'Rails Driver and Adapter for IBM Data Servers: {DB2 on Linux/Unix/Windows, DB2 on zOS, DB2 on i5/OS, Informix (IDS)}'
1515

1616
# Optional spec
@@ -19,8 +19,8 @@ Gem::Specification.new do |spec|
1919
spec.homepage = 'https://github.com/ibmdb/ruby-ibmdb'
2020
spec.required_ruby_version = '>= 2.5.0'
2121
spec.add_dependency('zip')
22-
spec.add_dependency('activerecord', '>= 5.0.7', '<=6.1')
23-
spec.requirements << 'ActiveRecord, at least 5.0.7'
22+
spec.add_dependency('activerecord', '<6.2')
23+
spec.requirements << 'ActiveRecord, at least 6.1'
2424

2525
candidates = Dir.glob("**/*")
2626
spec.files = candidates.delete_if do |item|

IBM_DB_Adapter/ibm_db/lib/active_record/connection_adapters/ibm_db_adapter.rb

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3705,13 +3705,15 @@ def initialize connection
37053705
class IBM_DB < Arel::Visitors::ToSql
37063706
private
37073707
def visit_Arel_Nodes_Limit(o, collector)
3708-
collector << "LIMIT "
3708+
collector << " FETCH FIRST "
37093709
visit o.expr, collector
3710+
collector << " ROWS ONLY "
37103711
end
37113712

37123713
def visit_Arel_Nodes_Offset(o, collector)
3713-
collector << "OFFSET "
3714+
collector << " OFFSET "
37143715
visit o.expr, collector
3716+
collector << " ROWS"
37153717
end
37163718

37173719
def visit_Arel_Nodes_ValuesList(o, collector)
@@ -3753,7 +3755,10 @@ def visit_Arel_Nodes_SelectStatement o, collector
37533755
}
37543756
end
37553757

3756-
if (o.offset && o.limit.nil?)
3758+
if (o.offset && o.limit)
3759+
visit_Arel_Nodes_Offset(o.offset, collector)
3760+
visit_Arel_Nodes_Limit(o.limit, collector)
3761+
elsif (o.offset && o.limit.nil?)
37573762
collector << " OFFSET "
37583763
visit o.offset.expr, collector
37593764
collector << " ROWS "

0 commit comments

Comments
 (0)