ibm_db 3.0.5-x86-mingw32 → 4.0.0-x86-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGES +4 -0
- data/LICENSE +1 -1
- data/MANIFEST +14 -14
- data/ParameterizedQueries README +6 -6
- data/README +208 -225
- data/ext/Makefile.nt32 +181 -181
- data/ext/Makefile.nt32.191 +212 -212
- data/ext/extconf.rb +291 -291
- data/ext/ibm_db.c +11887 -11887
- data/ext/ruby_ibm_db.h +241 -241
- data/ext/ruby_ibm_db_cli.c +866 -866
- data/ext/ruby_ibm_db_cli.h +500 -500
- data/init.rb +41 -41
- data/lib/IBM_DB.rb +27 -27
- data/lib/active_record/connection_adapters/ibm_db_adapter.rb +3452 -3177
- data/lib/active_record/connection_adapters/ibmdb_adapter.rb +5 -2
- data/lib/active_record/vendor/db2-i5-zOS.yaml +328 -328
- data/lib/mswin32/ibm_db.rb +91 -123
- data/lib/mswin32/rb2x/i386/ibm_db.so +0 -0
- data/test/active_record/connection_adapters/fake_adapter.rb +49 -46
- data/test/assets/example.log +1 -1
- data/test/assets/test.txt +1 -1
- data/test/cases/adapter_test.rb +351 -276
- data/test/cases/adapters/mysql2/active_schema_test.rb +193 -0
- data/test/cases/adapters/mysql2/bind_parameter_test.rb +50 -0
- data/test/cases/adapters/mysql2/boolean_test.rb +100 -0
- data/test/cases/adapters/mysql2/case_sensitivity_test.rb +63 -0
- data/test/cases/adapters/mysql2/charset_collation_test.rb +54 -0
- data/test/cases/adapters/mysql2/connection_test.rb +210 -0
- data/test/cases/adapters/mysql2/datetime_precision_quoting_test.rb +45 -0
- data/test/cases/adapters/mysql2/enum_test.rb +26 -0
- data/test/cases/adapters/mysql2/explain_test.rb +21 -0
- data/test/cases/adapters/mysql2/json_test.rb +195 -0
- data/test/cases/adapters/mysql2/mysql2_adapter_test.rb +83 -0
- data/test/cases/adapters/mysql2/reserved_word_test.rb +152 -0
- data/test/cases/adapters/mysql2/schema_migrations_test.rb +59 -0
- data/test/cases/adapters/mysql2/schema_test.rb +126 -0
- data/test/cases/adapters/mysql2/sp_test.rb +36 -0
- data/test/cases/adapters/mysql2/sql_types_test.rb +14 -0
- data/test/cases/adapters/mysql2/table_options_test.rb +42 -0
- data/test/cases/adapters/mysql2/unsigned_type_test.rb +66 -0
- data/test/cases/adapters/postgresql/active_schema_test.rb +98 -0
- data/test/cases/adapters/postgresql/array_test.rb +339 -0
- data/test/cases/adapters/postgresql/bit_string_test.rb +82 -0
- data/test/cases/adapters/postgresql/bytea_test.rb +134 -0
- data/test/cases/adapters/postgresql/case_insensitive_test.rb +26 -0
- data/test/cases/adapters/postgresql/change_schema_test.rb +38 -0
- data/test/cases/adapters/postgresql/cidr_test.rb +25 -0
- data/test/cases/adapters/postgresql/citext_test.rb +78 -0
- data/test/cases/adapters/postgresql/collation_test.rb +53 -0
- data/test/cases/adapters/postgresql/composite_test.rb +132 -0
- data/test/cases/adapters/postgresql/connection_test.rb +257 -0
- data/test/cases/adapters/postgresql/datatype_test.rb +92 -0
- data/test/cases/adapters/postgresql/domain_test.rb +47 -0
- data/test/cases/adapters/postgresql/enum_test.rb +91 -0
- data/test/cases/adapters/postgresql/explain_test.rb +20 -0
- data/test/cases/adapters/postgresql/extension_migration_test.rb +63 -0
- data/test/cases/adapters/postgresql/full_text_test.rb +44 -0
- data/test/cases/adapters/postgresql/geometric_test.rb +378 -0
- data/test/cases/adapters/postgresql/hstore_test.rb +382 -0
- data/test/cases/adapters/postgresql/infinity_test.rb +69 -0
- data/test/cases/adapters/postgresql/integer_test.rb +25 -0
- data/test/cases/adapters/postgresql/json_test.rb +237 -0
- data/test/cases/adapters/postgresql/ltree_test.rb +53 -0
- data/test/cases/adapters/postgresql/money_test.rb +96 -0
- data/test/cases/adapters/postgresql/network_test.rb +94 -0
- data/test/cases/adapters/postgresql/numbers_test.rb +49 -0
- data/test/cases/adapters/postgresql/postgresql_adapter_test.rb +405 -0
- data/test/cases/adapters/postgresql/prepared_statements_test.rb +22 -0
- data/test/cases/adapters/postgresql/quoting_test.rb +44 -0
- data/test/cases/adapters/postgresql/range_test.rb +343 -0
- data/test/cases/adapters/postgresql/referential_integrity_test.rb +111 -0
- data/test/cases/adapters/postgresql/rename_table_test.rb +34 -0
- data/test/cases/adapters/postgresql/schema_authorization_test.rb +119 -0
- data/test/cases/adapters/postgresql/schema_test.rb +597 -0
- data/test/cases/adapters/postgresql/serial_test.rb +154 -0
- data/test/cases/adapters/postgresql/statement_pool_test.rb +41 -0
- data/test/cases/adapters/postgresql/timestamp_test.rb +90 -0
- data/test/cases/adapters/postgresql/type_lookup_test.rb +33 -0
- data/test/cases/adapters/postgresql/utils_test.rb +62 -0
- data/test/cases/adapters/postgresql/uuid_test.rb +294 -0
- data/test/cases/adapters/postgresql/xml_test.rb +54 -0
- data/test/cases/adapters/sqlite3/collation_test.rb +53 -0
- data/test/cases/adapters/sqlite3/copy_table_test.rb +98 -0
- data/test/cases/adapters/sqlite3/explain_test.rb +21 -0
- data/test/cases/adapters/sqlite3/quoting_test.rb +101 -0
- data/test/cases/adapters/sqlite3/sqlite3_adapter_test.rb +441 -0
- data/test/cases/adapters/sqlite3/sqlite3_create_folder_test.rb +24 -0
- data/test/cases/adapters/sqlite3/statement_pool_test.rb +20 -0
- data/test/cases/aggregations_test.rb +168 -158
- data/test/cases/ar_schema_test.rb +146 -161
- data/test/cases/associations/association_scope_test.rb +16 -21
- data/test/cases/associations/belongs_to_associations_test.rb +1141 -1029
- data/test/cases/associations/bidirectional_destroy_dependencies_test.rb +41 -0
- data/test/cases/associations/callbacks_test.rb +190 -192
- data/test/cases/associations/cascaded_eager_loading_test.rb +188 -188
- data/test/cases/associations/eager_load_includes_full_sti_class_test.rb +36 -36
- data/test/cases/associations/eager_load_nested_include_test.rb +126 -128
- data/test/cases/associations/eager_singularization_test.rb +148 -148
- data/test/cases/associations/eager_test.rb +1514 -1429
- data/test/cases/associations/extension_test.rb +87 -82
- data/test/cases/associations/has_and_belongs_to_many_associations_test.rb +1004 -972
- data/test/cases/associations/has_many_associations_test.rb +2501 -2182
- data/test/cases/associations/has_many_through_associations_test.rb +1271 -1204
- data/test/cases/associations/has_one_associations_test.rb +707 -610
- data/test/cases/associations/has_one_through_associations_test.rb +383 -380
- data/test/cases/associations/inner_join_association_test.rb +139 -139
- data/test/cases/associations/inverse_associations_test.rb +733 -706
- data/test/cases/associations/join_model_test.rb +777 -754
- data/test/cases/associations/left_outer_join_association_test.rb +88 -0
- data/test/cases/associations/nested_through_associations_test.rb +579 -579
- data/test/cases/associations/required_test.rb +102 -82
- data/test/cases/associations_test.rb +385 -380
- data/test/cases/attribute_decorators_test.rb +125 -125
- data/test/cases/attribute_methods/read_test.rb +60 -60
- data/test/cases/attribute_methods_test.rb +1009 -952
- data/test/cases/attribute_set_test.rb +270 -210
- data/test/cases/attribute_test.rb +246 -180
- data/test/cases/attributes_test.rb +253 -136
- data/test/cases/autosave_association_test.rb +1708 -1595
- data/test/cases/base_test.rb +1713 -1664
- data/test/cases/batches_test.rb +489 -212
- data/test/cases/binary_test.rb +44 -52
- data/test/cases/bind_parameter_test.rb +110 -100
- data/test/cases/cache_key_test.rb +25 -0
- data/test/cases/calculations_test.rb +798 -646
- data/test/cases/callbacks_test.rb +636 -543
- data/test/cases/clone_test.rb +40 -40
- data/test/cases/coders/json_test.rb +15 -0
- data/test/cases/coders/yaml_column_test.rb +63 -63
- data/test/cases/collection_cache_key_test.rb +115 -0
- data/test/cases/column_alias_test.rb +17 -17
- data/test/cases/column_definition_test.rb +92 -123
- data/test/cases/comment_test.rb +143 -0
- data/test/cases/connection_adapters/adapter_leasing_test.rb +56 -54
- data/test/cases/connection_adapters/connection_handler_test.rb +160 -53
- data/test/cases/connection_adapters/connection_specification_test.rb +12 -12
- data/test/cases/connection_adapters/merge_and_resolve_default_url_config_test.rb +255 -293
- data/test/cases/connection_adapters/mysql_type_lookup_test.rb +69 -65
- data/test/cases/connection_adapters/quoting_test.rb +13 -13
- data/test/cases/connection_adapters/schema_cache_test.rb +61 -56
- data/test/cases/connection_adapters/type_lookup_test.rb +118 -110
- data/test/cases/connection_management_test.rb +112 -122
- data/test/cases/connection_pool_test.rb +521 -346
- data/test/cases/connection_specification/resolver_test.rb +131 -116
- data/test/cases/core_test.rb +112 -112
- data/test/cases/counter_cache_test.rb +214 -209
- data/test/cases/custom_locking_test.rb +17 -17
- data/test/cases/database_statements_test.rb +34 -19
- data/test/cases/{invalid_date_test.rb → date_test.rb} +44 -32
- data/test/cases/date_time_precision_test.rb +106 -0
- data/test/cases/date_time_test.rb +61 -61
- data/test/cases/defaults_test.rb +218 -223
- data/test/cases/dirty_test.rb +763 -785
- data/test/cases/disconnected_test.rb +30 -28
- data/test/cases/dup_test.rb +157 -157
- data/test/cases/enum_test.rb +444 -290
- data/test/cases/errors_test.rb +16 -0
- data/test/cases/explain_subscriber_test.rb +64 -64
- data/test/cases/explain_test.rb +87 -76
- data/test/cases/finder_respond_to_test.rb +60 -60
- data/test/cases/finder_test.rb +1294 -1169
- data/test/cases/fixture_set/file_test.rb +156 -138
- data/test/cases/fixtures_test.rb +988 -908
- data/test/cases/forbidden_attributes_protection_test.rb +165 -99
- data/test/cases/habtm_destroy_order_test.rb +61 -61
- data/test/cases/helper.rb +204 -210
- data/test/cases/hot_compatibility_test.rb +142 -54
- data/test/cases/i18n_test.rb +45 -45
- data/test/cases/inheritance_test.rb +606 -375
- data/test/cases/integration_test.rb +155 -139
- data/test/cases/invalid_connection_test.rb +24 -22
- data/test/cases/invertible_migration_test.rb +387 -295
- data/test/cases/json_serialization_test.rb +311 -302
- data/test/cases/locking_test.rb +493 -477
- data/test/cases/log_subscriber_test.rb +225 -136
- data/test/cases/migration/change_schema_test.rb +458 -512
- data/test/cases/migration/change_table_test.rb +256 -224
- data/test/cases/migration/column_attributes_test.rb +176 -192
- data/test/cases/migration/column_positioning_test.rb +56 -56
- data/test/cases/migration/columns_test.rb +310 -304
- data/test/cases/migration/command_recorder_test.rb +350 -305
- data/test/cases/migration/compatibility_test.rb +118 -0
- data/test/cases/migration/create_join_table_test.rb +157 -148
- data/test/cases/migration/foreign_key_test.rb +360 -328
- data/test/cases/migration/helper.rb +39 -39
- data/test/cases/migration/index_test.rb +218 -216
- data/test/cases/migration/logger_test.rb +36 -36
- data/test/cases/migration/pending_migrations_test.rb +52 -53
- data/test/cases/migration/references_foreign_key_test.rb +216 -169
- data/test/cases/migration/references_index_test.rb +101 -101
- data/test/cases/migration/references_statements_test.rb +136 -116
- data/test/cases/migration/rename_table_test.rb +93 -93
- data/test/cases/migration_test.rb +1157 -959
- data/test/cases/migrator_test.rb +470 -388
- data/test/cases/mixin_test.rb +68 -70
- data/test/cases/modules_test.rb +172 -173
- data/test/cases/multiparameter_attributes_test.rb +372 -350
- data/test/cases/multiple_db_test.rb +122 -115
- data/test/cases/nested_attributes_test.rb +1098 -1070
- data/test/cases/nested_attributes_with_callbacks_test.rb +144 -144
- data/test/cases/persistence_test.rb +1001 -909
- data/test/cases/pooled_connections_test.rb +81 -81
- data/test/cases/primary_keys_test.rb +376 -237
- data/test/cases/query_cache_test.rb +446 -326
- data/test/cases/quoting_test.rb +202 -156
- data/test/cases/readonly_test.rb +119 -118
- data/test/cases/reaper_test.rb +85 -85
- data/test/cases/reflection_test.rb +509 -463
- data/test/cases/relation/delegation_test.rb +63 -68
- data/test/cases/relation/merging_test.rb +157 -161
- data/test/cases/relation/mutation_test.rb +183 -165
- data/test/cases/relation/or_test.rb +92 -0
- data/test/cases/relation/predicate_builder_test.rb +16 -14
- data/test/cases/relation/record_fetch_warning_test.rb +40 -0
- data/test/cases/relation/where_chain_test.rb +105 -181
- data/test/cases/relation/where_clause_test.rb +182 -0
- data/test/cases/relation/where_test.rb +322 -300
- data/test/cases/relation_test.rb +328 -319
- data/test/cases/relations_test.rb +2026 -1815
- data/test/cases/reload_models_test.rb +22 -22
- data/test/cases/result_test.rb +90 -80
- data/test/cases/sanitize_test.rb +176 -83
- data/test/cases/schema_dumper_test.rb +457 -463
- data/test/cases/schema_loading_test.rb +52 -0
- data/test/cases/scoping/default_scoping_test.rb +528 -454
- data/test/cases/scoping/named_scoping_test.rb +561 -524
- data/test/cases/scoping/relation_scoping_test.rb +400 -357
- data/test/cases/secure_token_test.rb +32 -0
- data/test/cases/serialization_test.rb +104 -104
- data/test/cases/serialized_attribute_test.rb +364 -277
- data/test/cases/statement_cache_test.rb +136 -98
- data/test/cases/store_test.rb +195 -194
- data/test/cases/suppressor_test.rb +63 -0
- data/test/cases/tasks/database_tasks_test.rb +462 -398
- data/test/cases/tasks/mysql_rake_test.rb +345 -324
- data/test/cases/tasks/postgresql_rake_test.rb +304 -250
- data/test/cases/tasks/sqlite_rake_test.rb +220 -193
- data/test/cases/test_case.rb +131 -123
- data/test/cases/test_fixtures_test.rb +36 -0
- data/test/cases/time_precision_test.rb +102 -0
- data/test/cases/timestamp_test.rb +501 -467
- data/test/cases/touch_later_test.rb +121 -0
- data/test/cases/transaction_callbacks_test.rb +518 -452
- data/test/cases/transaction_isolation_test.rb +106 -106
- data/test/cases/transactions_test.rb +834 -817
- data/test/cases/type/adapter_specific_registry_test.rb +133 -0
- data/test/cases/type/date_time_test.rb +14 -0
- data/test/cases/type/integer_test.rb +27 -121
- data/test/cases/type/string_test.rb +22 -36
- data/test/cases/type/type_map_test.rb +177 -177
- data/test/cases/type_test.rb +39 -0
- data/test/cases/types_test.rb +24 -141
- data/test/cases/unconnected_test.rb +33 -33
- data/test/cases/validations/absence_validation_test.rb +73 -0
- data/test/cases/validations/association_validation_test.rb +97 -86
- data/test/cases/validations/i18n_generate_message_validation_test.rb +84 -84
- data/test/cases/validations/i18n_validation_test.rb +86 -90
- data/test/cases/validations/length_validation_test.rb +79 -47
- data/test/cases/validations/presence_validation_test.rb +103 -68
- data/test/cases/validations/uniqueness_validation_test.rb +548 -457
- data/test/cases/validations_repair_helper.rb +19 -23
- data/test/cases/validations_test.rb +194 -165
- data/test/cases/view_test.rb +216 -119
- data/test/cases/yaml_serialization_test.rb +121 -126
- data/test/config.example.yml +97 -0
- data/test/config.rb +5 -5
- data/test/fixtures/accounts.yml +29 -29
- data/test/fixtures/admin/accounts.yml +2 -2
- data/test/fixtures/admin/users.yml +10 -10
- data/test/fixtures/author_addresses.original +11 -0
- data/test/fixtures/author_addresses.yml +17 -17
- data/test/fixtures/author_favorites.yml +3 -3
- data/test/fixtures/authors.original +17 -0
- data/test/fixtures/authors.yml +23 -23
- data/test/fixtures/bad_posts.yml +9 -0
- data/test/fixtures/binaries.yml +133 -133
- data/test/fixtures/books.yml +31 -11
- data/test/fixtures/bulbs.yml +5 -5
- data/test/fixtures/cars.yml +9 -9
- data/test/fixtures/categories.yml +19 -19
- data/test/fixtures/categories/special_categories.yml +9 -9
- data/test/fixtures/categories/subsubdir/arbitrary_filename.yml +4 -4
- data/test/fixtures/categories_ordered.yml +7 -7
- data/test/fixtures/categories_posts.yml +31 -31
- data/test/fixtures/categorizations.yml +23 -23
- data/test/fixtures/clubs.yml +8 -8
- data/test/fixtures/collections.yml +3 -3
- data/test/fixtures/colleges.yml +3 -3
- data/test/fixtures/comments.yml +65 -65
- data/test/fixtures/companies.yml +67 -67
- data/test/fixtures/computers.yml +10 -10
- data/test/fixtures/content.yml +3 -0
- data/test/fixtures/content_positions.yml +3 -0
- data/test/fixtures/courses.yml +8 -8
- data/test/fixtures/customers.yml +25 -25
- data/test/fixtures/dashboards.yml +6 -6
- data/test/fixtures/dead_parrots.yml +5 -0
- data/test/fixtures/developers.yml +22 -22
- data/test/fixtures/developers_projects.yml +16 -16
- data/test/fixtures/dog_lovers.yml +7 -7
- data/test/fixtures/dogs.yml +4 -4
- data/test/fixtures/doubloons.yml +3 -3
- data/test/fixtures/edges.yml +5 -5
- data/test/fixtures/entrants.yml +14 -14
- data/test/fixtures/essays.yml +6 -6
- data/test/fixtures/faces.yml +11 -11
- data/test/fixtures/fk_test_has_fk.yml +3 -3
- data/test/fixtures/fk_test_has_pk.yml +1 -1
- data/test/fixtures/friendships.yml +4 -4
- data/test/fixtures/funny_jokes.yml +10 -10
- data/test/fixtures/interests.yml +33 -33
- data/test/fixtures/items.yml +3 -3
- data/test/fixtures/jobs.yml +7 -7
- data/test/fixtures/legacy_things.yml +3 -3
- data/test/fixtures/live_parrots.yml +4 -0
- data/test/fixtures/mateys.yml +4 -4
- data/test/fixtures/member_details.yml +8 -8
- data/test/fixtures/member_types.yml +6 -6
- data/test/fixtures/members.yml +11 -11
- data/test/fixtures/memberships.yml +34 -34
- data/test/fixtures/men.yml +5 -5
- data/test/fixtures/minimalistics.yml +2 -2
- data/test/fixtures/minivans.yml +5 -5
- data/test/fixtures/mixed_case_monkeys.yml +6 -6
- data/test/fixtures/mixins.yml +29 -29
- data/test/fixtures/movies.yml +7 -7
- data/test/fixtures/naked/yml/accounts.yml +1 -1
- data/test/fixtures/naked/yml/companies.yml +1 -1
- data/test/fixtures/naked/yml/courses.yml +1 -1
- data/test/fixtures/naked/yml/parrots.yml +2 -0
- data/test/fixtures/naked/yml/trees.yml +3 -0
- data/test/fixtures/nodes.yml +29 -0
- data/test/fixtures/organizations.yml +5 -5
- data/test/fixtures/other_comments.yml +6 -0
- data/test/fixtures/other_dogs.yml +2 -0
- data/test/fixtures/other_posts.yml +7 -0
- data/test/fixtures/other_topics.yml +42 -42
- data/test/fixtures/owners.yml +9 -9
- data/test/fixtures/parrots.yml +27 -27
- data/test/fixtures/parrots_pirates.yml +7 -7
- data/test/fixtures/people.yml +24 -24
- data/test/fixtures/peoples_treasures.yml +3 -3
- data/test/fixtures/pets.yml +19 -19
- data/test/fixtures/pirates.yml +15 -12
- data/test/fixtures/posts.yml +80 -80
- data/test/fixtures/price_estimates.yml +16 -7
- data/test/fixtures/products.yml +4 -4
- data/test/fixtures/projects.yml +7 -7
- data/test/fixtures/ratings.yml +14 -14
- data/test/fixtures/readers.yml +11 -11
- data/test/fixtures/references.yml +17 -17
- data/test/fixtures/reserved_words/distinct.yml +5 -5
- data/test/fixtures/reserved_words/distinct_select.yml +11 -11
- data/test/fixtures/reserved_words/group.yml +14 -14
- data/test/fixtures/reserved_words/select.yml +8 -8
- data/test/fixtures/reserved_words/values.yml +7 -7
- data/test/fixtures/ships.yml +6 -6
- data/test/fixtures/speedometers.yml +8 -8
- data/test/fixtures/sponsors.yml +12 -12
- data/test/fixtures/string_key_objects.yml +7 -7
- data/test/fixtures/subscribers.yml +10 -10
- data/test/fixtures/subscriptions.yml +12 -12
- data/test/fixtures/taggings.yml +78 -78
- data/test/fixtures/tags.yml +11 -11
- data/test/fixtures/tasks.yml +7 -7
- data/test/fixtures/teapots.yml +3 -3
- data/test/fixtures/to_be_linked/accounts.yml +2 -2
- data/test/fixtures/to_be_linked/users.yml +10 -10
- data/test/fixtures/topics.yml +49 -49
- data/test/fixtures/toys.yml +14 -14
- data/test/fixtures/traffic_lights.yml +9 -9
- data/test/fixtures/treasures.yml +10 -10
- data/test/fixtures/trees.yml +3 -0
- data/test/fixtures/uuid_children.yml +3 -3
- data/test/fixtures/uuid_parents.yml +2 -2
- data/test/fixtures/variants.yml +4 -4
- data/test/fixtures/vegetables.yml +19 -19
- data/test/fixtures/vertices.yml +3 -3
- data/test/fixtures/warehouse_things.yml +2 -2
- data/test/fixtures/zines.yml +5 -5
- data/test/migrations/10_urban/9_add_expressions.rb +11 -11
- data/test/migrations/decimal/1_give_me_big_numbers.rb +15 -15
- data/test/migrations/magic/1_currencies_have_symbols.rb +12 -12
- data/test/migrations/missing/1000_people_have_middle_names.rb +9 -9
- data/test/migrations/missing/1_people_have_last_names.rb +9 -9
- data/test/migrations/missing/3_we_need_reminders.rb +12 -12
- data/test/migrations/missing/4_innocent_jointable.rb +12 -12
- data/test/migrations/rename/1_we_need_things.rb +11 -11
- data/test/migrations/rename/2_rename_things.rb +9 -9
- data/test/migrations/to_copy/1_people_have_hobbies.rb +9 -9
- data/test/migrations/to_copy/2_people_have_descriptions.rb +9 -9
- data/test/migrations/to_copy2/1_create_articles.rb +7 -7
- data/test/migrations/to_copy2/2_create_comments.rb +7 -7
- data/test/migrations/to_copy_with_name_collision/1_people_have_hobbies.rb +9 -9
- data/test/migrations/to_copy_with_timestamps/20090101010101_people_have_hobbies.rb +9 -9
- data/test/migrations/to_copy_with_timestamps/20090101010202_people_have_descriptions.rb +9 -9
- data/test/migrations/to_copy_with_timestamps2/20090101010101_create_articles.rb +7 -7
- data/test/migrations/to_copy_with_timestamps2/20090101010202_create_comments.rb +7 -7
- data/test/migrations/valid/1_valid_people_have_last_names.rb +9 -9
- data/test/migrations/valid/2_we_need_reminders.rb +12 -12
- data/test/migrations/valid/3_innocent_jointable.rb +12 -12
- data/test/migrations/valid_with_subdirectories/1_valid_people_have_last_names.rb +9 -9
- data/test/migrations/valid_with_subdirectories/sub/2_we_need_reminders.rb +12 -12
- data/test/migrations/valid_with_subdirectories/sub1/3_innocent_jointable.rb +12 -12
- data/test/migrations/valid_with_timestamps/20100101010101_valid_with_timestamps_people_have_last_names.rb +9 -9
- data/test/migrations/valid_with_timestamps/20100201010101_valid_with_timestamps_we_need_reminders.rb +12 -12
- data/test/migrations/valid_with_timestamps/20100301010101_valid_with_timestamps_innocent_jointable.rb +12 -12
- data/test/migrations/version_check/20131219224947_migration_version_check.rb +8 -8
- data/test/models/admin.rb +5 -5
- data/test/models/admin/account.rb +3 -3
- data/test/models/admin/randomly_named_c1.rb +6 -2
- data/test/models/admin/user.rb +40 -40
- data/test/models/aircraft.rb +5 -4
- data/test/models/arunit2_model.rb +3 -3
- data/test/models/author.rb +209 -212
- data/test/models/auto_id.rb +4 -4
- data/test/models/autoloadable/extra_firm.rb +2 -2
- data/test/models/binary.rb +2 -2
- data/test/models/bird.rb +12 -12
- data/test/models/book.rb +23 -18
- data/test/models/boolean.rb +2 -2
- data/test/models/bulb.rb +52 -51
- data/test/models/cake_designer.rb +3 -3
- data/test/models/car.rb +29 -26
- data/test/models/carrier.rb +2 -2
- data/test/models/cat.rb +10 -0
- data/test/models/categorization.rb +19 -19
- data/test/models/category.rb +35 -35
- data/test/models/chef.rb +8 -7
- data/test/models/citation.rb +3 -3
- data/test/models/club.rb +25 -23
- data/test/models/college.rb +10 -10
- data/test/models/column.rb +3 -3
- data/test/models/column_name.rb +3 -3
- data/test/models/comment.rb +76 -64
- data/test/models/company.rb +230 -228
- data/test/models/company_in_module.rb +98 -98
- data/test/models/computer.rb +3 -3
- data/test/models/contact.rb +41 -41
- data/test/models/content.rb +40 -0
- data/test/models/contract.rb +20 -20
- data/test/models/country.rb +7 -7
- data/test/models/course.rb +6 -6
- data/test/models/customer.rb +83 -77
- data/test/models/customer_carrier.rb +14 -14
- data/test/models/dashboard.rb +3 -3
- data/test/models/default.rb +2 -2
- data/test/models/department.rb +4 -4
- data/test/models/developer.rb +274 -255
- data/test/models/dog.rb +5 -5
- data/test/models/dog_lover.rb +5 -5
- data/test/models/doubloon.rb +12 -12
- data/test/models/drink_designer.rb +3 -3
- data/test/models/edge.rb +5 -5
- data/test/models/electron.rb +5 -5
- data/test/models/engine.rb +4 -4
- data/test/models/entrant.rb +3 -3
- data/test/models/essay.rb +5 -5
- data/test/models/event.rb +3 -3
- data/test/models/eye.rb +37 -37
- data/test/models/face.rb +9 -9
- data/test/models/friendship.rb +6 -6
- data/test/models/guid.rb +2 -2
- data/test/models/guitar.rb +4 -0
- data/test/models/hotel.rb +11 -9
- data/test/models/image.rb +3 -3
- data/test/models/interest.rb +5 -5
- data/test/models/invoice.rb +4 -4
- data/test/models/item.rb +7 -7
- data/test/models/job.rb +7 -7
- data/test/models/joke.rb +7 -7
- data/test/models/keyboard.rb +3 -3
- data/test/models/legacy_thing.rb +3 -3
- data/test/models/lesson.rb +11 -11
- data/test/models/line_item.rb +3 -3
- data/test/models/liquid.rb +4 -4
- data/test/models/man.rb +11 -11
- data/test/models/matey.rb +4 -4
- data/test/models/member.rb +42 -41
- data/test/models/member_detail.rb +8 -7
- data/test/models/member_type.rb +3 -3
- data/test/models/membership.rb +35 -35
- data/test/models/mentor.rb +3 -0
- data/test/models/minimalistic.rb +2 -2
- data/test/models/minivan.rb +9 -9
- data/test/models/mixed_case_monkey.rb +3 -3
- data/test/models/mocktail_designer.rb +2 -0
- data/test/models/molecule.rb +6 -6
- data/test/models/movie.rb +5 -5
- data/test/models/node.rb +5 -0
- data/test/models/non_primary_key.rb +2 -0
- data/test/models/notification.rb +3 -0
- data/test/models/order.rb +4 -4
- data/test/models/organization.rb +14 -14
- data/test/models/other_dog.rb +5 -0
- data/test/models/owner.rb +37 -34
- data/test/models/parrot.rb +28 -29
- data/test/models/person.rb +142 -143
- data/test/models/personal_legacy_thing.rb +4 -4
- data/test/models/pet.rb +18 -15
- data/test/models/pet_treasure.rb +6 -0
- data/test/models/pirate.rb +92 -92
- data/test/models/possession.rb +3 -3
- data/test/models/post.rb +273 -264
- data/test/models/price_estimate.rb +4 -4
- data/test/models/professor.rb +5 -5
- data/test/models/project.rb +40 -31
- data/test/models/publisher.rb +2 -2
- data/test/models/publisher/article.rb +4 -4
- data/test/models/publisher/magazine.rb +3 -3
- data/test/models/randomly_named_c1.rb +1 -1
- data/test/models/rating.rb +4 -4
- data/test/models/reader.rb +23 -23
- data/test/models/recipe.rb +3 -0
- data/test/models/record.rb +2 -2
- data/test/models/reference.rb +22 -22
- data/test/models/reply.rb +61 -61
- data/test/models/ship.rb +39 -33
- data/test/models/ship_part.rb +8 -8
- data/test/models/shop.rb +17 -17
- data/test/models/shop_account.rb +6 -6
- data/test/models/speedometer.rb +6 -6
- data/test/models/sponsor.rb +7 -7
- data/test/models/string_key_object.rb +3 -3
- data/test/models/student.rb +4 -4
- data/test/models/subject.rb +16 -16
- data/test/models/subscriber.rb +8 -8
- data/test/models/subscription.rb +4 -4
- data/test/models/tag.rb +13 -7
- data/test/models/tagging.rb +13 -13
- data/test/models/task.rb +5 -5
- data/test/models/topic.rb +118 -124
- data/test/models/toy.rb +6 -6
- data/test/models/traffic_light.rb +4 -4
- data/test/models/treasure.rb +14 -14
- data/test/models/treaty.rb +7 -7
- data/test/models/tree.rb +3 -0
- data/test/models/tuning_peg.rb +4 -0
- data/test/models/tyre.rb +11 -11
- data/test/models/user.rb +14 -0
- data/test/models/uuid_child.rb +3 -3
- data/test/models/uuid_item.rb +6 -0
- data/test/models/uuid_parent.rb +3 -3
- data/test/models/vegetables.rb +24 -24
- data/test/models/vehicle.rb +6 -6
- data/test/models/vertex.rb +9 -9
- data/test/models/warehouse_thing.rb +5 -5
- data/test/models/wheel.rb +3 -3
- data/test/models/without_table.rb +3 -3
- data/test/models/zine.rb +3 -3
- data/test/schema/mysql2_specific_schema.rb +68 -58
- data/test/schema/oracle_specific_schema.rb +40 -43
- data/test/schema/postgresql_specific_schema.rb +114 -202
- data/test/schema/schema.rb +1057 -952
- data/test/schema/schema.rb.original +1057 -0
- data/test/schema/sqlite_specific_schema.rb +18 -22
- data/test/support/config.rb +43 -43
- data/test/support/connection.rb +23 -22
- data/test/support/connection_helper.rb +14 -14
- data/test/support/ddl_helper.rb +8 -8
- data/test/support/schema_dumping_helper.rb +20 -20
- data/test/support/yaml_compatibility_fixtures/rails_4_1.yml +22 -0
- data/test/support/yaml_compatibility_fixtures/rails_4_2_0.yml +182 -0
- metadata +129 -28
- data/lib/mswin32/rb19x/ibm_db.so +0 -0
- data/lib/mswin32/rb21x/i386/ibm_db.so +0 -0
- data/lib/mswin32/rb22x/i386/ibm_db.so +0 -0
- data/lib/mswin32/rb23x/i386/ibm_db.so +0 -0
- data/test/cases/associations/deprecated_counter_cache_on_has_many_through_test.rb +0 -26
- data/test/cases/attribute_methods/serialization_test.rb +0 -29
- data/test/cases/migration/change_schema_test - Copy.rb +0 -448
- data/test/cases/migration/foreign_key_test - Changed.rb +0 -325
- data/test/cases/migration/table_and_index_test.rb +0 -24
- data/test/cases/relation/where_test2.rb +0 -36
- data/test/cases/type/decimal_test.rb +0 -56
- data/test/cases/type/unsigned_integer_test.rb +0 -18
- data/test/cases/xml_serialization_test.rb +0 -457
- data/test/connections/native_ibm_db/connection.rb +0 -44
- data/test/fixtures/naked/csv/accounts.csv +0 -1
- data/test/schema/i5/ibm_db_specific_schema.rb +0 -137
- data/test/schema/ids/ibm_db_specific_schema.rb +0 -140
- data/test/schema/luw/ibm_db_specific_schema.rb +0 -137
- data/test/schema/mysql_specific_schema.rb +0 -70
- data/test/schema/zOS/ibm_db_specific_schema.rb +0 -208
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 188a00e8b635e83433b3b957fd3dba064beb9725
|
4
|
+
data.tar.gz: d1bfeff1332f1b64df403322b3e587682983a10d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a0bc0e713c9a14cb5591575d339c4215437b9b4b54dae393307958286d267b0033a76e0f11a46090bec32fc83fb39b8be4f0eee51846298b1835fb06e0250626
|
7
|
+
data.tar.gz: 234a3944092ab8d149972790ce70226162ad1b0fa489ef92a2daad892b123cdf195b3b5a42b2cf051ec1a1361d46dfd820550bd0c2bbd0378f0665452b8b35dd
|
data/CHANGES
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
Change Log
|
2
2
|
==============
|
3
|
+
|
4
|
+
2018/05/24 (IBM_DB adapter 4.0.0, driver 3.0.5)
|
5
|
+
- Rails 5.0.7 Toleration support. New features of Active Record 5.0.7 are not added also none of the open issue are fixed in this release.
|
6
|
+
|
3
7
|
2016/07/08 (IBM_DB adapter 3.0.5, driver 3.0.5)
|
4
8
|
- Fixed issue #71 - Query hangs from db2 with no any exception return
|
5
9
|
|
data/LICENSE
CHANGED
data/MANIFEST
CHANGED
@@ -1,14 +1,14 @@
|
|
1
|
-
CHANGES
|
2
|
-
README
|
3
|
-
LICENSE
|
4
|
-
ext/extconf.rb
|
5
|
-
ext/ibm_db.c
|
6
|
-
ext/ruby_ibm_db.h
|
7
|
-
lib/IBM_DB.rb
|
8
|
-
lib/linux32/ibm_db.so
|
9
|
-
lib/mswin32/ibm_db.so
|
10
|
-
lib/active_record/connection_adapters/ibm_db_adapter.rb
|
11
|
-
lib/active_record/vendor/db2-i5-zOS.yaml
|
12
|
-
test/activerecord/native_ibm_db/connection.rb
|
13
|
-
test/ibm_db_test.rb
|
14
|
-
MANIFEST
|
1
|
+
CHANGES
|
2
|
+
README
|
3
|
+
LICENSE
|
4
|
+
ext/extconf.rb
|
5
|
+
ext/ibm_db.c
|
6
|
+
ext/ruby_ibm_db.h
|
7
|
+
lib/IBM_DB.rb
|
8
|
+
lib/linux32/ibm_db.so
|
9
|
+
lib/mswin32/ibm_db.so
|
10
|
+
lib/active_record/connection_adapters/ibm_db_adapter.rb
|
11
|
+
lib/active_record/vendor/db2-i5-zOS.yaml
|
12
|
+
test/activerecord/native_ibm_db/connection.rb
|
13
|
+
test/ibm_db_test.rb
|
14
|
+
MANIFEST
|
data/ParameterizedQueries README
CHANGED
@@ -22,18 +22,18 @@ development:
|
|
22
22
|
|
23
23
|
Similarly for the other sections (test/production) of the database.yml file set "parameterized" to true to enable usage of parameterized SQL queries
|
24
24
|
|
25
|
+
|
25
26
|
Supported Activerecord Versions
|
26
27
|
===============================
|
27
|
-
Activerecord-
|
28
|
+
Activerecord-5.0.7 and above
|
29
|
+
|
28
30
|
|
29
31
|
Supported Operating Systems and Databases
|
30
32
|
=========================================
|
31
33
|
Refer the main README
|
32
34
|
|
35
|
+
|
33
36
|
Feedback
|
34
37
|
========
|
35
|
-
Your feedback is very much appreciated and expected through
|
36
|
-
-
|
37
|
-
- rubyibm forum: http://rubyforge.org/forum/?group_id=2361
|
38
|
-
- rubyibm bug reports: http://rubyforge.org/tracker/?group_id=2361
|
39
|
-
- IBM_DB developers: rubyibm-developers@rubyforge.org
|
38
|
+
Your feedback is very much appreciated and expected through github:
|
39
|
+
- github issue: https://github.com/ibmdb/ruby-ibmdb/issues
|
data/README
CHANGED
@@ -1,225 +1,208 @@
|
|
1
|
-
=====================================================================
|
2
|
-
README for the IBM_DB Adapter (
|
3
|
-
For ActiveRecord Version >=
|
4
|
-
=====================================================================
|
5
|
-
|
6
|
-
Supported Operating Systems
|
7
|
-
============================
|
8
|
-
- Linux 32/64 bit
|
9
|
-
- Microsoft Windows 32 bit
|
10
|
-
- IBM AIX 32/64 bit
|
11
|
-
- HP-UX 32/64 bit
|
12
|
-
- Sun Solaris 32/64 bit
|
13
|
-
|
14
|
-
|
15
|
-
Supported Databases
|
16
|
-
====================
|
17
|
-
- IBM DB2 Universal Database on Linux/Unix/Windows versions
|
18
|
-
- Remote connections to IBM DB2 Universal Database on i5/OS versions
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
===============
|
210
|
-
- Available only with Ruby version 1.9 and above
|
211
|
-
- Data returned from the driver will be in UTF8 encoding format.
|
212
|
-
- The input data to the driver can be in any Ruby supported encoding format.
|
213
|
-
|
214
|
-
To Do
|
215
|
-
====
|
216
|
-
- Support ActiveRecord remove_column method for DB2 zOS version 9
|
217
|
-
|
218
|
-
|
219
|
-
Feedback
|
220
|
-
========
|
221
|
-
Your feedback is very much appreciated and expected through Rubyforge:
|
222
|
-
- rubyibm project: http://rubyforge.org/projects/rubyibm/
|
223
|
-
- rubyibm forum: http://rubyforge.org/forum/?group_id=2361
|
224
|
-
- rubyibm bug reports: http://rubyforge.org/tracker/?group_id=2361
|
225
|
-
- IBM_DB developers: rubyibm-developers@rubyforge.org
|
1
|
+
=====================================================================
|
2
|
+
README for the IBM_DB Adapter (4.0.0) and Driver (3.0.5) (2018/05/24)
|
3
|
+
For ActiveRecord Version >= 5.0.7 (and Rails >= 5.0.7)
|
4
|
+
=====================================================================
|
5
|
+
|
6
|
+
Supported Operating Systems
|
7
|
+
============================
|
8
|
+
- Linux 32/64 bit
|
9
|
+
- Microsoft Windows 32 bit
|
10
|
+
- IBM AIX 32/64 bit
|
11
|
+
- HP-UX 32/64 bit
|
12
|
+
- Sun Solaris 32/64 bit
|
13
|
+
|
14
|
+
|
15
|
+
Supported Databases
|
16
|
+
====================
|
17
|
+
- IBM DB2 Universal Database on Linux/Unix/Windows versions 10 Fixpak 5 and above
|
18
|
+
- Remote connections to IBM DB2 Universal Database on i5/OS versions 7.2 and above.
|
19
|
+
- Remote connections to IBM DB2 Universal Database on z/OS version 11 and above
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
Installing the IBM_DB adapter and driver as a Ruby gem
|
24
|
+
=======================================================
|
25
|
+
The IBM_DB gem is an ActiveRecord adapter. Installing the IBM_DB adapter and driver as a gem enables any application in the
|
26
|
+
Ruby environment, including Rails, to interact with IBM data servers.
|
27
|
+
|
28
|
+
|
29
|
+
The IBM_DB driver can also be built separately (from source) and used in direct API calls.
|
30
|
+
|
31
|
+
|
32
|
+
1. Windows platforms:
|
33
|
+
=====================
|
34
|
+
INSTALL (as Ruby gem)
|
35
|
+
To remove previous gem version (optionally):
|
36
|
+
D:\>gem uninstall ibm_db
|
37
|
+
Successfully uninstalled ibm_db version 3.0.5
|
38
|
+
|
39
|
+
Example:
|
40
|
+
D:\>gem install ibm_db
|
41
|
+
Fetching: ibm_db-4.0.0-x86-mingw32.gem (100%)
|
42
|
+
Successfully installed ibm_db-4.0.0-x86-mingw32
|
43
|
+
1 gem installed
|
44
|
+
Installing ri documentation for ibm_db-4.0.0-x86-mingw32...
|
45
|
+
Installing RDoc documentation for ibm_db-4.0.0-x86-mingw32...
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
2. Linux and Unix platforms:
|
50
|
+
============================
|
51
|
+
|
52
|
+
INSTALL (as Ruby gem)
|
53
|
+
To remove previous gem version (optionally):
|
54
|
+
$ gem uninstall ibm_db
|
55
|
+
Successfully uninstalled ibm_db version 3.0.5
|
56
|
+
|
57
|
+
|
58
|
+
$ gem install ibm_db
|
59
|
+
Building native extensions. This could take a while...
|
60
|
+
Successfully installed ibm_db-4.0.0
|
61
|
+
1 gem installed
|
62
|
+
Installing ri documentation for ibm_db-4.0.0...
|
63
|
+
Installing RDoc documentation for ibm_db-4.0.0...
|
64
|
+
|
65
|
+
|
66
|
+
BUILD (optionally) ibm_db gem from sources (ibm_db-x.x.x.tar.gz):
|
67
|
+
1. Download source from Github
|
68
|
+
https://github.com/ibmdb/ruby-ibmdb
|
69
|
+
2. Build gem from specification (IBM_DB.gemspec)
|
70
|
+
$ cd IBM_DB_Adapter/ibm_db
|
71
|
+
$ gem build IBM_DB.gemspec
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
TEST (simple gem install verification)
|
76
|
+
======================================
|
77
|
+
$ rails new myApp -d ibm_db
|
78
|
+
$ cd myApp
|
79
|
+
$ rails generate scaffold Wood name:string price:float
|
80
|
+
$ vi config/database.yml
|
81
|
+
$ rake db:migrate
|
82
|
+
$ rails console #rails server
|
83
|
+
|
84
|
+
|
85
|
+
Instructions for building and installing the IBM_DB driver from source
|
86
|
+
=======================================================================
|
87
|
+
Building the driver manually as described below is not required if the install
|
88
|
+
process above has been pursued. This manual procedure is in fact automated
|
89
|
+
on Linux and UNIX platforms by the IBM_DB gem install, but is presented
|
90
|
+
here only for reference.
|
91
|
+
|
92
|
+
Prerequisites:
|
93
|
+
Install Ruby from:
|
94
|
+
https://github.com/ibmdb/ruby-ibmdb
|
95
|
+
|
96
|
+
Setup the environment
|
97
|
+
|
98
|
+
Linux and Unix platforms:
|
99
|
+
Note: commands may vary depending on the shell used
|
100
|
+
- To setup DB2 environment while using an arbitrary user account
|
101
|
+
(other than the DB2 install user account):
|
102
|
+
Example:
|
103
|
+
$ . /home/db2inst1/sqllib/db2profile
|
104
|
+
|
105
|
+
- To compile and link with DB2 client libraries:
|
106
|
+
$ export IBM_DB_HOME=DB2HOME (eg. /home/db2inst1/sqllib or /opt/ibm/db2/v10.5)
|
107
|
+
|
108
|
+
Windows platforms:
|
109
|
+
- Set ruby devkit environment:
|
110
|
+
- To compile and link with DB2 client libraries:
|
111
|
+
$ set IBM_DB_HOME=DB2HOME (eg. C:\Program Files\IBM\SQLLIB)
|
112
|
+
|
113
|
+
Build the driver:
|
114
|
+
- $ cd rubyibm_source/IBM_DB_Adapter/ibm_db/ext
|
115
|
+
- $ ruby extconf.rb
|
116
|
+
- $ make
|
117
|
+
|
118
|
+
Build the ibm_db gem
|
119
|
+
- $ cp rubyibm_source/IBM_DB_Adapter/ibm_db/ext/ibm_db.so rubyibm_source/IBM_DB_Adapter/ibm_db/lib
|
120
|
+
# On windows binaries are generated for 2.x version of ruby
|
121
|
+
# and placed under rb2x directory. The file ibm_db.rb is to ensure that binary is loaded based on runtime
|
122
|
+
|
123
|
+
- $ cd rubyibm_source/IBM_DB_Adapter/ibm_db
|
124
|
+
- $ gem build IBM_DB.gemspec
|
125
|
+
|
126
|
+
Running tests
|
127
|
+
=============
|
128
|
+
Testing the IBM_DB Adapter
|
129
|
+
|
130
|
+
1) a) Copy the files under test directory of ibm_db gem to the test directory of Activerecord following the same directory structure.
|
131
|
+
These files contain modifications in some test files of AR suite to handle ibm_db specifics. Hence make sure these files are replaced in the AR test suite properly.
|
132
|
+
b) Rename warhouse-things.yml to warehouse_things.yml under fixtures directory
|
133
|
+
2) Edit the Rakefile to include ibm_db in list of adapters
|
134
|
+
%w( mysql mysql2 postgresql sqlite3 sqlite3_mem firebird db2 oracle sybase openbase ibm_db frontbase jdbcmysql jdbcpostgresql jdbcsqlite3 jdbcderby jdbch2 jdbchsqldb )
|
135
|
+
3) Configure the connection information in test/config.yml for ibm_db
|
136
|
+
4) run the test suite - rake test_ibm_db
|
137
|
+
|
138
|
+
Running IBM_DB driver test suite
|
139
|
+
|
140
|
+
1) Copy over the test directory under source to lib directory of installed ibm_db under $GEM_HOME
|
141
|
+
2) Edit config.yml file to provide database connection information
|
142
|
+
3) Run the test suite
|
143
|
+
$ rake onlytests
|
144
|
+
4) To run single test
|
145
|
+
export SINGLE_RUBY_TEST=<test file name> #Eg: export SINGLE_RUBY_TEST=test_000_PrepareDb.rb
|
146
|
+
rake onlytests
|
147
|
+
|
148
|
+
Limitations and known problems
|
149
|
+
==============================
|
150
|
+
- ActiveRecord remove_column method is not supported for DB2 zOS
|
151
|
+
- The driver returns an error when you try to insert a TIMESTAMP value into a DATE column.
|
152
|
+
To fix this, please ensure that the following configuration keyword PATCH2=58 is set
|
153
|
+
in the COMMON section of your DB2 CLI initialization file (db2cli.ini):
|
154
|
+
- set: db2 UPDATE CLI CFG FOR SECTION COMMON USING PATCH2 58
|
155
|
+
- verify: db2 GET CLI CFG FOR SECTION COMMON
|
156
|
+
Please refer to http://publib.boulder.ibm.com/infocenter/db2luw/v9/topic/com.ibm.db2.udb.apdv.cli.doc/doc/c0007882.htm
|
157
|
+
for more information.
|
158
|
+
- The behaviour of ActiveRecord::Base.find(:first) without an :order attribute can be unpredictable.
|
159
|
+
The first record (i.e. the record with the minimum id) may be not retrieved. In a relational model,
|
160
|
+
the order of the rows returned is unpredictable and independent of the order of insertion.
|
161
|
+
This issue may be addressed in a future release.
|
162
|
+
- Rails applications on DB2 9 require the APPLHEAPSZ database configuration parameter to be
|
163
|
+
set to or above 1024. You will need to set this parameter for each database for which you will be
|
164
|
+
running DB2 on Rails applications. Following is the command syntax for updating the
|
165
|
+
applheapsz parameter:
|
166
|
+
> db2 update db cfg for <database_name> using APPLHEAPSZ 1024
|
167
|
+
To enable this parameter, you need to restart your DB2 instance.
|
168
|
+
- If you see connectivity issues with Informix Dynamic Server, please ensure that the server is configured to accept DRDA connections.
|
169
|
+
Please refer to http://publib.boulder.ibm.com/infocenter/idshelp/v111/index.jsp?topic=/com.ibm.admin.doc/admin154.htm for more information.
|
170
|
+
- IBM_DB is not supported on JRuby. As stated in the JRuby Wiki, "Basics of Getting JRuby Running":
|
171
|
+
'You may install other gems, but keep in mind that libraries with C extension dependencies
|
172
|
+
will not work in JRuby.' http://www.headius.com/jrubywiki/index.php/Getting_Started
|
173
|
+
The IBM_DB adapter relies on IBM_DB driver (C extension) and the IBM Driver for ODBC and
|
174
|
+
CLI to access databases on IBM data servers. Alternatively, you can either use the regular C
|
175
|
+
implementation of Ruby, or use ActiveRecord-JDBC adapter to access databases.
|
176
|
+
|
177
|
+
- The following tests are expected to fail on DB2 LUW
|
178
|
+
- test_read_attributes_before_type_cast_on_datetime
|
179
|
+
- test_to_xml
|
180
|
+
- test_native_types
|
181
|
+
- test_counting
|
182
|
+
- test_counting_with_column_name_and_hash
|
183
|
+
- test_counting_with_empty_hash_conditions
|
184
|
+
- test_counting_with_single_conditions
|
185
|
+
- test_counting_with_single_hash
|
186
|
+
- Finders methods first, second, last, nth from first, nth from last, with limit, with offset etc. are expected to fail
|
187
|
+
Note :- 1) The test cases from HasManyAssociations (4-8) above are found failing only when run as part of
|
188
|
+
the complete suite. However they pass when run standalone.
|
189
|
+
2) Also there are two test cases (test_validate_uniqueness_with_non_standard_table_names, test_update_all_with_non_standard_table_name)which run against table with non-standard name. Given that DB2/IDS is standard compliant these test cases are expected to fail.
|
190
|
+
To have these test cases passing rename the fixtures file warehouse-things to warehouse_things.
|
191
|
+
- The test cases do not follow the DB2 rules are expectedto fail
|
192
|
+
|
193
|
+
|
194
|
+
Unicode Support
|
195
|
+
===============
|
196
|
+
- Data returned from the driver will be in UTF8 encoding format.
|
197
|
+
- The input data to the driver can be in any Ruby supported encoding format.
|
198
|
+
|
199
|
+
To Do
|
200
|
+
====
|
201
|
+
- Support ActiveRecord remove_column method for DB2 zOS
|
202
|
+
- Open issues in Github
|
203
|
+
|
204
|
+
|
205
|
+
Feedback
|
206
|
+
========
|
207
|
+
Your feedback is very much appreciated and expected through github:
|
208
|
+
- github issue: https://github.com/ibmdb/ruby-ibmdb/issues
|