Closed asdffly77 closed 6 years ago
I hope you will forgive me that I'm not good at English. I also have the same problem. Please refer to following information.
centos 6.8, ruby 2.2.4, rails 4.2.7.1, ibm_db2 gem 3.0.4
Hang up occasionally when running rake test
Asset.find_by(xxxxx: 'AAAAAA').try(:yyyyy) -> IBM_DB.fetch_array()
Database name = XXDBTEST Database path = /home/db2inst1/xxdbtest/db2inst1/NODE0000/SQL00001/MEMBER0000/ Input database alias = XXDBTEST Locks held = 2 Applications currently connected = 3 Agents currently waiting on locks = 0 Snapshot timestamp = 03/06/2017 06:34:15.672194 Application handle = 7530 Application ID = 127.0.0.1.58097.170306060717 Sequence number = 08016 Application name = rake test -v CONNECT Authorization ID = DB2INST1 Application status = UOW Waiting Status change time = Not Collected Application code page = 1208 Locks held = 1 Total wait time (ms) = Not Collected List Of Locks Lock Name = 0x5359534C564C3031DDECEF28C1 Lock Attributes = 0x00000000 Release Flags = 0x40000000 Lock Count = 1 Hold Count = 0 Lock Object Name = 0 Object Type = Internal Plan Lock Mode = S
$ db2pd -db xxdbtest -lock -transactions -applications -dynamic Database Member 0 -- Database XXDBTEST -- Active -- Up 2 days 03:11:11 -- Date 2017-03-06-07.28.31.042303 Locks: Address TranHdl Lockname Type Mode Sts Owner Dur HoldCount Att ReleaseFlg rrIID 0x00007F027DA06600 3 5359534C564C3031DDECEF28C1 PlanLock ..S G 3 1 0 0x00000000 0x40000000 0 0x00007F027DCF6280 13 5359534C564C3031DDECEF28C1 PlanLock ..S G 13 1 0 0x00000000 0x40000000 0 Database Member 0 -- Database XXDBTEST -- Active -- Up 2 days 03:11:11 -- Date 2017-03-06-07.28.31.042363 Transactions: Address AppHandl [nod-index] TranHdl Locks State Tflag Tflag2 Firstlsn Lastlsn Firstlso Lastlso SpaceReserved LogSpace TID AxRegCnt GXID ClientUserID ClientWrkstnName ClientApplName ClientAccntng 0x00007F027CCC7F00 4257 [000-04257] 3 1 READ 0x00000000 0x00000000 0x0000000000000000 0x00000000007608A5 0 0 0 0 0x000000103D93 1 0 n/a vagrant-centos65.vagrantup.com n/a n/a 0x00007F027CCC9A00 4258 [000-04258] 4 0 READ 0x00000000 0x00000000 0x0000000000000000 0x0000000000000000 0 0 0 0 0x0000001022D8 1 0 n/a n/a n/a n/a 0x00007F027CCCB500 4259 [000-04259] 5 0 READ 0x00000000 0x00000000 0x0000000000000000 0x0000000000000000 0 0 0 0 0x0000001384C4 1 0 n/a n/a n/a n/a 0x00007F027CCCD000 4260 [000-04260] 6 0 READ 0x00000000 0x00000000 0x0000000000000000 0x0000000000000000 0 0 0 0 0x0000001022DA 1 0 n/a n/a n/a n/a 0x00007F027CCCEB00 4261 [000-04261] 7 0 READ 0x00000000 0x00000020 0x0000000000000000 0x000000000097C721 0 0 0 0 0x000000135FF0 1 0 n/a n/a n/a n/a 0x00007F027CCD0600 4262 [000-04262] 8 0 READ 0x00000000 0x00000000 0x0000000000000000 0x0000000000000000 0 0 0 0 0x0000001022DC 1 0 n/a n/a n/a n/a 0x00007F027CCD2100 4263 [000-04263] 9 0 READ 0x00000000 0x00000000 0x0000000000000000 0x0000000000000000 0 0 0 0 0x0000001022DD 1 0 n/a n/a n/a n/a 0x00007F027CCD3C00 4264 [000-04264] 10 0 READ 0x00000000 0x00000000 0x0000000000000000 0x0000000000000000 0 0 0 0 0x0000001022E0 1 0 n/a n/a db2evml_DB2DETAILDEADLOCK n/a 0x00007F027CCD5700 7380 [000-07380] 11 0 READ 0x00000000 0x00000000 0x0000000000000000 0x0000000000000000 0 0 0 0 0x000000126100 1 0 n/a n/a n/a n/a 0x00007F027CCD8D00 7530 [000-07530] 13 1 READ 0x00000000 0x00000000 0x0000000000000000 0x00000000009836D8 0 0 0 0 0x000000138304 1 0 n/a vagrant-centos65.vagrantup.com n/a n/a Database Member 0 -- Database XXDBTEST -- Active -- Up 2 days 03:11:11 -- Date 2017-03-06-07.28.31.042523 Applications: Address AppHandl [nod-index] NumAgents CoorEDUID Status C-AnchID C-StmtUID L-AnchID L-StmtUID Appid WorkloadID WorkloadOccID CollectActData CollectActPartition CollectSectionActuals 0x00000002042D0080 4263 [000-04263] 1 3125 ConnectCompleted 0 0 0 0 *LOCAL.DB2.170304041740 0 0 N C N 0x0000000204320080 4262 [000-04262] 1 3124 ConnectCompleted 0 0 0 0 *LOCAL.DB2.170304041739 0 0 N C N 0x00000002042A0080 7380 [000-07380] 1 3127 UOW-Waiting 0 0 553 22 *LOCAL.db2inst1.170306052009 1 37 N C N 0x0000000203560080 4261 [000-04261] 1 3123 ConnectCompleted 0 0 0 0 *LOCAL.DB2.170304041738 0 0 N C N 0x00000002045E0080 7530 [000-07530] 1 3129 UOW-Waiting 0 0 425 37 127.0.0.1.58097.170306060717 1 65 N C N 0x00000002043C0080 4260 [000-04260] 1 3122 ConnectCompleted 0 0 0 0 *LOCAL.DB2.170304041737 0 0 N C N 0x0000000203590080 4259 [000-04259] 1 3121 ConnectCompleted 0 0 0 0 *LOCAL.DB2.170304041736 0 0 N C N 0x00000002037D0080 4258 [000-04258] 1 3120 ConnectCompleted 0 0 0 0 *LOCAL.DB2.170304041735 0 0 N C N 0x0000000204370080 4264 [000-04264] 1 3126 ConnectCompleted 0 0 0 0 *LOCAL.DB2.170304041741 0 0 N C N 0x0000000204430080 4257 [000-04257] 1 2797 UOW-Waiting 0 0 425 37 127.0.0.1.57924.170304041720 1 1 N C N External Connection Attributes Address AppHandl [nod-index] ClientIPAddress EncryptionLvl SystemAuthID 0x00000002042D0080 4263 [000-04263] n/a None DB2INST1 0x0000000204320080 4262 [000-04262] n/a None DB2INST1 0x00000002042A0080 7380 [000-07380] n/a None DB2INST1 0x0000000203560080 4261 [000-04261] n/a None DB2INST1 0x00000002045E0080 7530 [000-07530] 127.0.0.1 None DB2INST1 0x00000002043C0080 4260 [000-04260] n/a None DB2INST1 0x0000000203590080 4259 [000-04259] n/a None DB2INST1 0x00000002037D0080 4258 [000-04258] n/a None DB2INST1 0x0000000204370080 4264 [000-04264] n/a None DB2INST1 0x0000000204430080 4257 [000-04257] 127.0.0.1 None DB2INST1 Trusted Connection Attributes Address AppHandl [nod-index] TrustedContext ConnTrustType RoleInherited 0x00000002042D0080 4263 [000-04263] n/a non trusted n/a 0x0000000204320080 4262 [000-04262] n/a non trusted n/a 0x00000002042A0080 7380 [000-07380] n/a non trusted n/a 0x0000000203560080 4261 [000-04261] n/a non trusted n/a 0x00000002045E0080 7530 [000-07530] n/a non trusted n/a 0x00000002043C0080 4260 [000-04260] n/a non trusted n/a 0x0000000203590080 4259 [000-04259] n/a non trusted n/a 0x00000002037D0080 4258 [000-04258] n/a non trusted n/a 0x0000000204370080 4264 [000-04264] n/a non trusted n/a 0x0000000204430080 4257 [000-04257] n/a non trusted n/a Autonomous Routine Connections Address AppHandl [nod-index] Status Autonomous Routine Handl [nod-index] Status Anonymous Block Connections Address AppHandl [nod-index] Status Anonymous Block Handl [nod-index] Status Database Member 0 -- Database XXDBTEST -- Active -- Up 2 days 03:11:11 -- Date 2017-03-06-07.28.31.043751 Dynamic Cache: Current Memory Used 739068 Total Heap Size 1271398 Cache Overflow Flag 0 Number of References 284420 Number of Statement Inserts 95632 Number of Statement Deletes 95620 Number of Variation Inserts 98566 Number of Statements 12 Dynamic SQL Statements: Address AnchID StmtUID NumEnv NumVar NumRef NumExe Text 0x00007F0282F97C00 164 34 1 1 16 16 SELECT COLNAME, TYPENAME FROM SYSCAT.COLUMNS WHERE TABNAME='POLICY' AND TABSCHEMA='SYSTOOLS' 0x00007F0282DC4BA0 168 1 0 0 49836 49836 SELECT IDENTITY_VAL_LOCAL() FROM SYSIBM.SYSDUMMY1 0x00007F0282D7FAE0 310 76 1 1 96 32 SELECT STATS_FLAG FROM SYSTOOLS.HMON_ATM_INFO WHERE SCHEMA = ? AND NAME = ? AND CREATE_TIME = ? WITH UR 0x00007F0282F94720 422 71 1 1 15 5 SELECT TABSCHEMA, TABNAME FROM SYSCAT.TABLES WHERE TBSPACEID = ? AND TABLEID = ? AND CREATE_TIME = ? AND TYPE <> 'H' WITH UR 0x00007F0282FEF000 425 37 0 0 9888 5151 SELECT ASSET.* FROM ASSET WHERE ASSET.xxxxx = ? FETCH FIRST 1 ROWS ONLY 0x00007F0282D4A0C0 450 104 1 1 16 16 SELECT TRIGNAME FROM SYSCAT.TRIGGERS WHERE TABNAME='POLICY' AND TABSCHEMA='SYSTOOLS' 0x00007F0282D7EC60 553 22 0 0 1 1 values current timestamp 0x00007F0282D7F540 554 25 0 0 37 37 DELETE FROM XX_CCCC_DDDD 0x00007F0283137F80 580 32 1 1 16 16 CALL SYSPROC.SYSINSTALLOBJECTS('POLICY','V','','') 0x00007F0282D4C980 760 1282 0 0 1 1 DELETE FROM XX_EEEEE 0x00007F0282F94500 809 78 1 1 47 47 SET CURRENT LOCK TIMEOUT 5 0x00007F0282DCF900 1014 59 1 1 16 16 SELECT POLICY FROM SYSTOOLS.POLICY WHERE MED='DB2CommonMED' AND DECISION='NOP' AND NAME='CommonPolicy' Dynamic SQL Environments: Address AnchID StmtUID EnvID Iso QOpt Blk 0x00007F0282DCF440 164 34 1 CS 5 B 0x00007F0282DC7300 310 76 1 UR 5 B 0x00007F0282DCC1C0 422 71 1 UR 5 B 0x00007F0282D4A260 450 104 1 CS 5 B 0x00007F02831380A0 580 32 1 CS 5 B 0x00007F0282F96DC0 809 78 1 UR 5 B 0x00007F0282DCFAA0 1014 59 1 CS 5 B Dynamic SQL Variations: Address AnchID StmtUID EnvID VarID NumRef Typ Lockname Val Insert Time Sect Size Num Copies 0x00007F0283130080 164 34 1 1 16 6 220000000100000001008014D6 Y 2017-03-06-06.11.11.744324 7360 1 0x00007F0282DC75E0 310 76 1 1 96 6 4C000000010000000100C026D6 Y 2017-03-06-06.11.11.809726 7928 1 0x00007F0282DC2500 422 71 1 1 15 6 47000000010000000100C034D6 Y 2017-03-06-06.11.13.621142 8432 1 0x00007F0282F94940 450 104 1 1 16 6 680000000100000001004038D6 Y 2017-03-06-06.11.11.764216 7080 1 0x00007F0282D72500 580 32 1 1 16 13 200000000100000001008048D6 Y 2017-03-06-06.11.11.692942 6192 1 0x00007F0282DC0080 809 78 1 1 47 9 4E0000000100000001002065D6 Y 2017-03-06-06.11.11.789476 2152 1 0x00007F0282F90080 1014 59 1 1 16 6 3B000000010000000100C07ED6 Y 2017-03-06-06.11.11.772063 6808 1
@hi-nakamura i had fix this issues, i upgrade ruby version from 2.2.4 to 2.3.0 and some other versions.just do not use 2.2.4.try it
Thank you. I tried Ruby 2.3.0. but was the same result
unicorn pstack of the same phenomenon
Thread 2 (Thread 0x7f5317118700 (LWP 7286)): #0 0x00007f5316162283 in poll () from /lib64/libc.so.6 #1 0x00007f531728cb59 in thread_timer () #2 0x00007f5316ce5aa1 in start_thread () from /lib64/libpthread.so.0 #3 0x00007f531616baad in clone () from /lib64/libc.so.6 Thread 1 (Thread 0x7f5317109700 (LWP 7284)): #0 0x00007f5316ce968c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f531728bb53 in gvl_acquire () #2 0x00007f531728d046 in blocking_region_end () #3 0x00007f531728f1eb in call_without_gvl () #4 0x00007f53087ea75b in ibm_Ruby_Thread_Call () from /var/www/vendor/bundle/ruby/2.2.0/extensions/x86_64-linux/2.2.0-static/ibm_db-3.0.3/ibm_db.so #5 0x00007f53087ebab2 in ibm_db_fetch_array () from /var/www/vendor/bundle/ruby/2.2.0/extensions/x86_64-linux/2.2.0-static/ibm_db-3.0.3/ibm_db.so #6 0x00007f531726773f in vm_call_cfunc () #7 0x00007f531726c93d in vm_exec_core () #8 0x00007f531727130f in vm_exec () #9 0x00007f5317274b7f in invoke_block_from_c () #10 0x00007f5317275995 in rb_yield () #11 0x00007f5317299a97 in rb_ary_each () #12 0x00007f531726773f in vm_call_cfunc () #13 0x00007f531726b3b6 in vm_exec_core () #14 0x00007f531727130f in vm_exec () #15 0x00007f5317274b7f in invoke_block_from_c () #16 0x00007f5317274f18 in vm_invoke_proc () #17 0x00007f53172750fa in rb_vm_invoke_proc () #18 0x00007f531714c2ed in proc_call () #19 0x00007f531726773f in vm_call_cfunc () #20 0x00007f531726c93d in vm_exec_core () #21 0x00007f531727130f in vm_exec () #22 0x00007f5317274b7f in invoke_block_from_c () #23 0x00007f5317274f18 in vm_invoke_proc () #24 0x00007f53172750fa in rb_vm_invoke_proc () #25 0x00007f531714c2ed in proc_call () #26 0x00007f531726773f in vm_call_cfunc () #27 0x00007f531726c93d in vm_exec_core () #28 0x00007f531727130f in vm_exec () #29 0x00007f5317274b7f in invoke_block_from_c () #30 0x00007f5317274f18 in vm_invoke_proc () #31 0x00007f53172750fa in rb_vm_invoke_proc () #32 0x00007f531714c2ed in proc_call () #33 0x00007f531726773f in vm_call_cfunc () #34 0x00007f531726c93d in vm_exec_core () #35 0x00007f531727130f in vm_exec () #36 0x00007f5317274b7f in invoke_block_from_c () #37 0x00007f5317275995 in rb_yield () #38 0x00007f5317299a97 in rb_ary_each () #39 0x00007f531726773f in vm_call_cfunc () #40 0x00007f531726b3b6 in vm_exec_core () #41 0x00007f531727130f in vm_exec () #42 0x00007f5317274b7f in invoke_block_from_c () #43 0x00007f5317275789 in catch_i () #44 0x00007f5317263b98 in rb_catch_protect () #45 0x00007f5317263cf0 in rb_f_catch () #46 0x00007f531726773f in vm_call_cfunc () #47 0x00007f531726b3b6 in vm_exec_core () #48 0x00007f531727130f in vm_exec () #49 0x00007f531727e81e in rb_iseq_eval () #50 0x00007f5317145ffb in rb_load_internal0 () #51 0x00007f531714704b in rb_f_load () #52 0x00007f531726773f in vm_call_cfunc () #53 0x00007f531727c733 in vm_call_method () #54 0x00007f531726c93d in vm_exec_core () #55 0x00007f531727130f in vm_exec () #56 0x00007f531727e81e in rb_iseq_eval () #57 0x00007f5317145ffb in rb_load_internal0 () #58 0x00007f531714704b in rb_f_load () #59 0x00007f531726773f in vm_call_cfunc () #60 0x00007f531727c733 in vm_call_method () #61 0x00007f531726c93d in vm_exec_core () #62 0x00007f531727130f in vm_exec () #63 0x00007f531727e81e in rb_iseq_eval () #64 0x00007f5317145ffb in rb_load_internal0 () #65 0x00007f531714704b in rb_f_load () #66 0x00007f531726773f in vm_call_cfunc () #67 0x00007f531727c733 in vm_call_method () #68 0x00007f531726c93d in vm_exec_core () #69 0x00007f531727130f in vm_exec () #70 0x00007f5317271be1 in rb_iseq_eval_main () #71 0x00007f5317142697 in ruby_exec_internal () #72 0x00007f5317145b86 in ruby_run_node () #73 0x00007f531714042b in main ()
I confirmed that it reproduced under the following two conditions.
・Perform file upload with ruby on rails application ・Refer to the table where DECIMAL type exists
Problem Description ubuntu server 14.04 ruby 2.2.4, rails 4.2.4 ,ibm_db2 gem 3.0.4, when use connect.where(ajbs:'255700000516944').limit(1).order("zdbh desc").first to get data from db2,the query was hanging, and no return just hanging there forever , but i run the same code query on my local machine the query can return nil form db2 whith no hangs,my local machine environment is mac os rails 4.2.4,ruby 2.3.0 ,ibm_db2 gem 3.0.4