• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: OpenBase & WebObjects for scaling
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: OpenBase & WebObjects for scaling


  • Subject: Re: OpenBase & WebObjects for scaling
  • From: Scott Keith <email@hidden>
  • Date: Wed, 14 Jan 2009 15:04:21 -0500

Hi All,

I want to comment on a few things in this thread.

OpenBase generates globally unique keys by incrementing the key by a set multiple (either 10 or 100). When you setup a cluster, each database gets its own unique identifier (0-99) and that identifier is used to generate keys for that database which are globally unique.

So for instance, db #1 would generate keys 1001,1011,1021,1031,etc. db #2 would generate keys 1002,1012,1022,1032. This way if the link between the databases ever goes down, the keys generated would still be guaranteed to be unique.

Regarding the fix described at:
http://homepage.mac.com/andrewlindesay/le/manuals/lewostuff/LEWOStuffOverview.pdf
(Section 9: OPENBASE JDBC Adaptor, on page 119.)

We are planning to compile this fix directly into the OpenBase Plugin. What the fix does is grab the locks at the beginning of the transaction so there will never be a case where the transaction needs to be aborted to avoid a deadlock with another transaction. This is essentially what it does at the SQL level:

START TRANSACTION
WRITE TABLE foo, bar
INSERT INTO foo...
INSERT INTO bar...
COMMIT

If you have not had a chance to try OpenBase 11 (beta), you can find it at http://www.openbase.com/beta. Other things that are going into OpenBase 11 include: incremental backups, PDF document value extraction, always-on encryption, improved handling of dynamic networks and a whole bunch of other features. A 64 bit version is also in the works.

Best regards,

Scott Keith
OpenBase



Begin forwarded message:

From: Chuck Hill <email@hidden>
Date: January 14, 2009 10:47:49 AM PST
To: Joe Moreno <email@hidden>
Cc: WebObjects-Dev Mailing List <email@hidden>
Subject: Re: OpenBase & WebObjects for scaling

Hi Joe,

On Jan 13, 2009, at 10:11 AM, Joe Moreno wrote:

Andrew,

Another thing that's impressed me with OpenBase is the clustering failover. I doubt many people have used this feature.

Any SQL written to any database in the cluster is automatically propagated to other OpenBase databases in that cluster within five seconds without any primary key collisions.

Do you know how OpenBase handles that? This is usually quite the problem with clustering and replication. Does it need to have a GUID as the primary key, or does it work with integers?



Additionally, if the master database fails your WebObjects app will automatically begin using another database in the cluster (no code needed to handle this case). Once the master database recovers, its SQL, from the other databases, is updated and it resumes handling the WO app's SQL.

That sounds quite interesting.


Chuck

On Dec 30, 2008, at 00:39:27, Andrew Lindesay wrote:

Hello Joe;

I think this problem may be slightly different as it is not necessarily to do with PK's. My understanding is that "OpenBasePKPlugIn" is there to get EOF to use the OPENBASE PK- generation scheme rather than EO_PK_TABLE.

cheers.

I think I ran into the exact problem you mentioned about the deadlock in OpenBase 10 using the default primary key generation.
Scott Keith advised me to compile the WO apps against the OpenBasePKPlugin.framework which uses the OpenBaseJDBC.jar and, even under heavy load, I've never had a problem using OB 10 with the plugin. I just had to add a single line to my Application.java:
JDBCPlugIn .setPlugInNameForSubprotocol ("com.webobjects.jdbcadaptor.OpenBasePKPlugIn", "openbase");

___ Andrew Lindesay www.lindesay.co.nz


_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


-- 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@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden


_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
References: 
 >Re: OpenBase & WebObjects for scaling (From: Chuck Hill <email@hidden>)

  • Prev by Date: Re: Bug ID 6342679: NSTimestamp Happy New Year Bug
  • Next by Date: Re: OpenBase & WebObjects for scaling
  • Previous by thread: Re: OpenBase & WebObjects for scaling
  • Next by thread: Re: Problem File Upload WO 5.4 WONDER 5.0.0.8764
  • Index(es):
    • Date
    • Thread