@@ -68,7 +68,7 @@ module Granite::Transactions
6868 end
6969 {% end % }
7070 rescue err
71- raise DB ::Error .new(err.message)
71+ raise DB ::Error .new(err.message, cause: err )
7272 end
7373
7474 # Runs an INSERT statement for all records in *model_array*, with options to
@@ -92,7 +92,7 @@ module Granite::Transactions
9292 end
9393 {% end % }
9494 rescue err
95- raise DB ::Error .new(err.message)
95+ raise DB ::Error .new(err.message, cause: err )
9696 end
9797
9898 def import (model_array : Array (self ) | Granite ::Collection (self ), ignore_on_duplicate : Bool , batch_size : Int32 = model_array.size)
@@ -114,7 +114,7 @@ module Granite::Transactions
114114 end
115115 {% end % }
116116 rescue err
117- raise DB ::Error .new(err.message)
117+ raise DB ::Error .new(err.message, cause: err )
118118 end
119119 end
120120
@@ -176,7 +176,7 @@ module Granite::Transactions
176176 rescue err : DB ::Error
177177 raise err
178178 rescue err
179- raise DB ::Error .new(err.message)
179+ raise DB ::Error .new(err.message, cause: err )
180180 else
181181 self .new_record = false
182182 end
@@ -199,7 +199,7 @@ module Granite::Transactions
199199 begin
200200 self .class.adapter.update(self .class.table_name, self .class.primary_name, fields, params)
201201 rescue err
202- raise DB ::Error .new(err.message)
202+ raise DB ::Error .new(err.message, cause: err )
203203 end
204204 {% end % }
205205 end
0 commit comments