On Aug 26, 2010, at 9:58 PM, Mike Schrag wrote: > I can't vouch for connectionbroker's accuracy of impl, but I would expect all > your db access to be behind a single lock and therefore not benefit from > multiple channels. Of course most of the people who might challenge my claims > are probably drunk in Montreal right now.
Hey! I resemble that comment! > I'll check source later tonight and see if I'm talking crazy. I think you are correct. An single EOF stack will use a single DB connection unless you do something very odd like trip a fault in awakeFromFetch while EOF is already fetching. For concurrent DB access you need to have multiple EOF stacks or multi-threaded EOF*. Chuck * See Unicorn. > On Aug 26, 2010, at 9:55 PM, Dov Rosenberg <[email protected]> wrote: > >> Is it not a good idea to use the ERXJDBCAdaptor and ConnectionBroker >> together? >> >> I would have thought if I only used a single OSC it would have made sure >> that each transaction went to the correct connection. >> >> Should there only be a single db connection for each OSC? >> >> Thanks >> >> Dov Rosenberg >> >> >> On 8/26/10 9:46 PM, "Mike Schrag" <[email protected]> wrote: >> >>> 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 <[email protected]> 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" <[email protected]> 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 <[email protected]> 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 ([email protected]) >>>>>> Help/Unsubscribe/Update your Subscription: >>>>>> http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40pobox.com >>>>>> >>>>>> This email sent to [email protected] >>>> >> > _______________________________________________ > Do not post admin requests to the list. They will be ignored. > Webobjects-dev mailing list ([email protected]) > Help/Unsubscribe/Update your Subscription: > http://lists.apple.com/mailman/options/webobjects-dev/chill%40global-village.net > > This email sent to [email protected] -- Chuck Hill Senior Consultant / VP Development Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems. http://www.global-village.net/products/practical_webobjects _______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to [email protected]
