| 3810 | |
| 3811 | |
| 3812 | jrd_tra::~jrd_tra() |
| 3813 | { |
| 3814 | while (tra_undo_records.hasData()) |
| 3815 | delete tra_undo_records.pop(); |
| 3816 | |
| 3817 | delete tra_undo_space; |
| 3818 | delete tra_user_management; |
| 3819 | delete tra_timezone_snapshot; |
| 3820 | delete tra_mapping_list; |
| 3821 | delete tra_dbcreators_list; |
| 3822 | delete tra_gen_ids; |
| 3823 | |
| 3824 | if (!tra_outer) |
| 3825 | delete tra_blob_space; |
| 3826 | else |
| 3827 | fb_assert(!tra_arrays); |
| 3828 | |
| 3829 | DFW_delete_deferred(this, -1); |
| 3830 | |
| 3831 | if (tra_flags & TRA_own_interface) |
| 3832 | { |
| 3833 | tra_interface->setHandle(NULL); |
| 3834 | tra_interface->release(); |
| 3835 | } |
| 3836 | |
| 3837 | if (tra_autonomous_pool) |
| 3838 | MemoryPool::deletePool(tra_autonomous_pool); |
| 3839 | |
| 3840 | delete tra_sec_db_context; |
| 3841 | } |
| 3842 | |
| 3843 | |
| 3844 | JTransaction* jrd_tra::getInterface(bool create) |