{"action":"created","issue":{"url":"https://api.github.com/repos/libuv/libuv/issues/737","repository_url":"https://api.github.com/repos/libuv/libuv","labels_url":"https://api.github.com/repos/libuv/libuv/issues/737/labels{/name}","comments_url":"https://api.github.com/repos/libuv/libuv/issues/737/comments","events_url":"https://api.github.com/repos/libuv/libuv/issues/737/events","html_url":"https://github.com/libuv/libuv/pull/737","id":136491223,"number":737,"title":"test: fix threadpool_multiple_event_loops for PPC","user":{"login":"iWuzHere","id":624456,"avatar_url":"https://avatars.githubusercontent.com/u/624456?v=3","gravatar_id":"","url":"https://api.github.com/users/iWuzHere","html_url":"https://github.com/iWuzHere","followers_url":"https://api.github.com/users/iWuzHere/followers","following_url":"https://api.github.com/users/iWuzHere/following{/other_user}","gists_url":"https://api.github.com/users/iWuzHere/gists{/gist_id}","starred_url":"https://api.github.com/users/iWuzHere/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iWuzHere/subscriptions","organizations_url":"https://api.github.com/users/iWuzHere/orgs","repos_url":"https://api.github.com/users/iWuzHere/repos","events_url":"https://api.github.com/users/iWuzHere/events{/privacy}","received_events_url":"https://api.github.com/users/iWuzHere/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-02-25T19:49:43Z","updated_at":"2016-02-26T15:59:38Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/libuv/libuv/pulls/737","html_url":"https://github.com/libuv/libuv/pull/737","diff_url":"https://github.com/libuv/libuv/pull/737.diff","patch_url":"https://github.com/libuv/libuv/pull/737.patch"},"body":"On PPC (linux and AIX) uv_thread_join (which is just a call to\r\npthread_join) takes quite a while. Increased the timeout of this\r\nspecific test on PPC so that there is ample time for all threads to join\r\nback. The fs_do and getaddrinfo_do calls do not take up much time.\r\n\r\nAlso removing the ifdef for AIX around fs_do since it did nothing.\r\n\r\nThis should fix https://github.com/libuv/libuv/issues/687\r\n\r\nFrom a run on the community machine:\r\n```\r\n[imran@node-ci-be libuv]$ make check\r\nmake  test/run-tests\r\nmake[1]: Entering directory `/home/imran/libuv'\r\n  CC       test/test_run_tests-run-tests.o\r\n  CCLD     test/run-tests\r\nmake[1]: Leaving directory `/home/imran/libuv'\r\nmake  check-TESTS\r\nmake[1]: Entering directory `/home/imran/libuv'\r\n[%   0|+   0|-   0|T   0|S   0]: platform_output\r\nOutput from process `platform_output`:\r\nuv_get_process_title: /home/imran/libuv/test/.libs/lt-run-tests\r\nuv_cwd: /home/imran/libuv\r\nuv_resident_set_memory: 2162688\r\nuv_uptime: 1205986.000000\r\nuv_getrusage:\r\n  user: 0 sec 44 microsec\r\n  system: 0 sec 162 microsec\r\nuv_cpu_info:\r\n  model: unknown\r\n  speed: 0\r\n  times.sys: 33331400\r\n  times.user: 148390400\r\n  times.idle: 11775118800\r\n  times.irq: 1529100\r\n  times.nice: 4100\r\n  model: unknown\r\n  speed: 0\r\n  times.sys: 30043200\r\n  times.user: 131771600\r\n  times.idle: 11808101300\r\n  times.irq: 1014600\r\n  times.nice: 11300\r\n  model: unknown\r\n  speed: 0\r\n  times.sys: 28187800\r\n  times.user: 143528300\r\n  times.idle: 11803955900\r\n  times.irq: 1149100\r\n  times.nice: 1600\r\n  model: unknown\r\n  speed: 0\r\n  times.sys: 31647300\r\n  times.user: 129339200\r\n  times.idle: 11808075300\r\n  times.irq: 825900\r\n  times.nice: 12700\r\nuv_interface_addresses:\r\n  name: lo\r\n  internal: 1\r\n  physical address: 00:00:00:00:00:00\r\n  address: 127.0.0.1\r\n  netmask: 255.0.0.0\r\n  name: eth0\r\n  internal: 0\r\n  physical address: fa:16:3e:72:73:1a\r\n  address: 192.168.60.29\r\n  netmask: 255.255.252.0\r\n  name: lo\r\n  internal: 1\r\n  physical address: 00:00:00:00:00:00\r\n  address: ::1\r\n  netmask: ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff\r\n  name: eth0\r\n  internal: 0\r\n  physical address: fa:16:3e:72:73:1a\r\n  address: fe80::f816:3eff:fe72:731a\r\n  netmask: ffff:ffff:ffff:ffff::\r\n=============================================================\r\n[%  86|+ 245|-   0|T   0|S   0]: fs_event_watch_dir_recursive\r\n`fs_event_watch_dir_recursive` skipped\r\nOutput from process `fs_event_watch_dir_recursive`:\r\nRecursive directory watching not supported on this platform.\r\n=============================================================\r\n[%  96|+ 273|-   0|T   0|S   1]: thread_stack_size\r\n`thread_stack_size` skipped\r\nOutput from process `thread_stack_size`:\r\nOSX only test\r\n=============================================================\r\n[% 100|+ 282|-   0|T   0|S   2]: Done.\r\nPASS: test/run-tests\r\n=============\r\n1 test passed\r\n=============\r\nmake[1]: Leaving directory `/home/imran/libuv'\r\n[imran@node-ci-be libuv]\r\n```"},"comment":{"url":"https://api.github.com/repos/libuv/libuv/issues/comments/189339005","html_url":"https://github.com/libuv/libuv/pull/737#issuecomment-189339005","issue_url":"https://api.github.com/repos/libuv/libuv/issues/737","id":189339005,"user":{"login":"iWuzHere","id":624456,"avatar_url":"https://avatars.githubusercontent.com/u/624456?v=3","gravatar_id":"","url":"https://api.github.com/users/iWuzHere","html_url":"https://github.com/iWuzHere","followers_url":"https://api.github.com/users/iWuzHere/followers","following_url":"https://api.github.com/users/iWuzHere/following{/other_user}","gists_url":"https://api.github.com/users/iWuzHere/gists{/gist_id}","starred_url":"https://api.github.com/users/iWuzHere/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iWuzHere/subscriptions","organizations_url":"https://api.github.com/users/iWuzHere/orgs","repos_url":"https://api.github.com/users/iWuzHere/repos","events_url":"https://api.github.com/users/iWuzHere/events{/privacy}","received_events_url":"https://api.github.com/users/iWuzHere/received_events","type":"User","site_admin":false},"created_at":"2016-02-26T15:59:38Z","updated_at":"2016-02-26T15:59:38Z","body":"@saghul on my laptop ( linux x86 ) the time that the join ends up taking is:\r\n\r\n```\r\nDEBUG - uv_thread_join time:0.043999\r\n```\r\n\r\nOn the community PPC machine, as mentioned in issue #687, the join ends up taking this long:\r\n```\r\nDEBUG - uv_thread_join time:41.906051\r\n```\r\nWhich is what causes the test to fail.\r\n\r\nOn the aix machine that I test on ( which is a bit faster than the community AIX machine ) I get the following:\r\n\r\n```\r\nDEBUG - uv_thread_join time:74.113115\r\n```\r\n\r\nI started off with the timeout set to 75 seconds but the test still failed on AIX with a timeout, thus I upped it to 80s then 85s up to 100s but was still seeing the timeout so I gave it a timeout of 120s and it finally passed.\r\n\r\nI can try halfing the number of threads that are being used and will report back the time."}}