Re: ERXJDBCConnectionBroker Question

From: Mike Schrag (mschra..obox.com)
Date: Fri Aug 27 2010 - 01:46:11 UTC

  • Next message: Dov Rosenberg: "Re: ERXJDBCConnectionBroker Question"

    With one osc you saw activity on multiple connections concurrently? I can't imagine that scenario has a happy ending. I don't even know how I would be possible given that all your db access should be behind a dbc lock. You might see use of multiple connections, but that would probably explain your failing commits (inserting on conn 1, committing conn 2, maybe). Each osc should end up having its own conn and you should see parallel access that way.

    To answer more I think I need to not be on an iPhone :)

    Sent from my iPhone

    On Aug 26, 2010, at 9:37 PM, Dov Rosenberg <DRosenber..nquira.Com> wrote:

    > Hmmm - I did a little jmeter test and definitely saw an improvement in page
    > view performance and saw activity on multiple DB connections during the
    > test. By simply adding the connection broker with a single OSC.
    >
    > If I set up object store pooling wont that increase issues with concurrency
    > within my app? I.e. Trying to update data that has already been updated in a
    > different OSC?
    >
    > I am using the Jgroups synchronizer between instances already.
    >
    > Would the following set of properties be consistent with each other:
    >
    > er.extensions.ERXObjectStoreCoordinatorPool.maxCoordinators = 10
    > er.extensions.ERXJDBCAdaptor.className=er.extensions.jdbc.ERXJDBCAdaptor
    > er.extensions.ERXJDBCAdaptor.useConnectionBroker = true
    > er.extensions.remoteSynchronizer.enabled=true
    > er.extensions.remoteSynchronizer=er.jgroups.ERJGroupsSynchronizer
    > dbMinConnectionsGLOBAL=10
    > dbMaxConnectionsGLOBAL=15
    > er.extensions.ERXJDBCConnectionBroker.maxConnections=15
    > er.extensions.ERXJDBCConnectionBroker.minConnections=10
    >
    > If I understand what is going on I should get 10 EOF stacks sharing a pool
    > of 15 database connections. I assume there is some magic running behind the
    > scenes to keep all of the OSC in sync with each other?
    >
    > Thanks again
    >
    > Dov Rosenberg
    >
    >
    >
    > On 8/26/10 9:00 PM, "Mike Schrag" <mschra..obox.com> wrote:
    >
    >> Connection pooling won't really do anything for you because each stack is
    >> single threaded. You want object store coordinator pooling.
    >>
    >> Sent from my iPhone
    >>
    >> On Aug 26, 2010, at 8:45 PM, Dov Rosenberg <DRosenber..nquira.Com> wrote:
    >>
    >>> During some testing today I turned on support for connection pooling in my
    >>> application using the ERXJDBCAdaptor and the ERXJDBCConnectionBroker. I could
    >>> see the connections being used fine and all of the things that did fetches
    >>> seemed to work without any issues. However when I tried doing something that
    >>> generated an INSERT the transactions did not commit and no changes were made.
    >>> I could see the SQL being generated as expected and the saveChanges()
    >>> happened without throwing any exception – just no data got written to the
    >>> database. As soon as I disabled the use of the connection pool everything
    >>> worked properly again.
    >>>
    >>> Any thoughts would be appreciated
    >>>
    >>> Dov Rosenberg
    >>> _______________________________________________
    >>> Do not post admin requests to the list. They will be ignored.
    >>> Webobjects-dev mailing list (Webobjects-de..ists.apple.com)
    >>> Help/Unsubscribe/Update your Subscription:
    >>> http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40pobox.com
    >>>
    >>> This email sent to mschra..obox.com
    >



    This archive was generated by hypermail 2.0.0 : Fri Aug 27 2010 - 01:47:27 UTC