#385 ✓resolved
Alex Coles

extlib pooling needs tweaking for JRuby

Reported by Alex Coles | June 14th, 2008 @ 01:27 PM

When extlib specs are executed in JRuby

NO_RCOV=true jruby -S rake spec

the execution hangs here:

- should track the initialized pools

(JRuby 1.1.2)

Comments and changes to this ticket

  • Alex Coles

    Alex Coles June 14th, 2008 @ 01:35 PM

    • Title changed from “extlib specs hang when executed on JRuby” to “extlib pooling needs tweaking for JRuby”

    Previous hang resolved by adjusting pool_size (see commit 59b51a3

    However, the values I chose is pretty arbitrary. Its worth spending a little time here (possibly getting the JRuby folks to put in some time) to figure out the values needed to optimize for JRuby.

    As such, I changed the ticket title.

  • Dan Kubb (dkubb)

    Dan Kubb (dkubb) November 28th, 2008 @ 02:35 AM

    • State changed from “new” to “open”
    • Assigned user changed from “Sam Smoot” to “Dan Kubb (dkubb)”

    Alex, can you try dkubb/extlib on github and see if the problem persists?

    dbussink made some changes that should've fixed this.

  • Dan Kubb (dkubb)

    Dan Kubb (dkubb) November 30th, 2008 @ 01:43 PM

    • Tag changed from extlib to concurrency, extlib, jruby, pool, pooling
    • State changed from “open” to “hold”
  • Alex Coles

    Alex Coles November 30th, 2008 @ 01:53 PM

    I pulled down the latest code this evening (commit #1fe1889 )

    and I can confirm the hang issue is fixed. However, I am encountering two failures in JRuby 1.1.5 (and notin MRI), one of which is related to pooling:

    'Object#encoded_hash returns the encoded hash like the value in the default Object#inspect' FAILED
    expected: "#<Oi:0x1187f5b>",
         got: "#<Oi:0x230feb6>" (using ==)
    'Extlib::Pooling should wake up the scavenger thread when exiting' FAILED
    expected false, got true
  • Dirkjan Bussink

    Dirkjan Bussink November 30th, 2008 @ 02:12 PM

    • State changed from “hold” to “resolved”

    The second issue is a JRuby bug and will be fixed in 1.1.6, the first failure is because Object#encoded_hash depends on the MRI implementation. Both are actually not critical to properly running DM with JRuby.

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.

New-ticket Create new ticket

Create your profile

Help contribute to this project by taking a few moments to create your personal profile. Create your profile »

People watching this ticket