I did try this with the locking. But perhaps I am doing something wrong, but it doesn't seem to do anything. My SQL-staments are just like before. Shouldn't I see a 'select for update'?

Op 4-apr-07, om 21:10 heeft [EMAIL PROTECTED] het volgende geschreven:

Send Webobjects-dev mailing list submissions to
        [email protected]

To subscribe or unsubscribe via the World Wide Web, visit
        http://lists.apple.com/mailman/listinfo/webobjects-dev
or, via email, send a message with subject or body 'help' to
        [EMAIL PROTECTED]

You can reach the person managing the list at
        [EMAIL PROTECTED]

When replying, please edit your Subject line so it is more specific
than "Re: Contents of Webobjects-dev digest..."


Today's Topics:

   1. Re: Delete statement (Ken Anderson)
   2. Re: Delete statement (Chuck Hill)


----------------------------------------------------------------------

Message: 1
Date: Wed, 4 Apr 2007 12:56:42 -0400
From: Ken Anderson <[EMAIL PROTECTED]>
Subject: Re: Delete statement
To: Frank Stock <[EMAIL PROTECTED]>
Cc: [email protected]
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset="us-ascii"

Frank,

Upon first glance, your code looks OK, except for the fact that
you're not locking your editing context.  Since you're allocating a
new one, you need to lock it.  I suggest you do this:

ec.lock();
try {
// current code
} finally {
ec.unlock();
}

Since your problem is intermittent, it is likely that this is the
problem.

Ken


On Apr 4, 2007, at 12:45 PM, Frank Stock wrote:

Hi,

I use SOAP-calls to WO and I get strange effects in the following
routine:

public void deleteWebtextValue (String webtext, String language) {
        
                EOEditingContext ec = new EOEditingContext();
                EOQualifier aQual;
                NSMutableArray qbind;
                EOFetchSpecification fs;
                
                LanguageWebtext lwObject;
                qbind=new NSMutableArray();
                qbind.addObject(webtext);
                qbind.addObject(language);
                aQual = EOQualifier.qualifierWithQualifierFormat
("(webtext.webtext=%@) and (language.language=%@)",qbind);
                fs = new EOFetchSpecification("LanguageWebtext",aQual,null);
                NSArray arLanguageWebtext = 
ec.objectsWithFetchSpecification(fs);
                // should only be 1
                for (int i=0;i< arLanguageWebtext.count();i++) {
                        lwObject = 
(LanguageWebtext)arLanguageWebtext.objectAtIndex(i);
                        ec.deleteObject(lwObject);
                }
                ec.saveChanges();
                
        }

Most of the time this results in a delete-statement:
delete from languagewebtext where languagewebtext_id=8788;

but sometimes I get a (strange) update-statement:

update languagewebtext set language_id = NULL, webtext_id = NULL
where languagewebtext_id=8898;
Both can't be NULL;
This results in currupting the database!

I don't understand that!


Thanks for helping,
Frank Stock
 _______________________________________________
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/kenlists%
40anderhome.com

This email sent to [EMAIL PROTECTED]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.apple.com/pipermail/webobjects-dev/attachments/ 20070404/5dee1d9e/attachment.html

------------------------------

Message: 2
Date: Wed, 4 Apr 2007 10:09:29 -0700
From: Chuck Hill <[EMAIL PROTECTED]>
Subject: Re: Delete statement
To: WebObjects Dev Apple <[email protected]>
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed

I can almost guarantee this is the problem.  :-)

Chuck


On Apr 4, 2007, at 9:56 AM, Ken Anderson wrote:

Frank,

Upon first glance, your code looks OK, except for the fact that
you're not locking your editing context.  Since you're allocating a
new one, you need to lock it.  I suggest you do this:

ec.lock();
try {
// current code
} finally {
ec.unlock();
}

Since your problem is intermittent, it is likely that this is the
problem.

Ken


On Apr 4, 2007, at 12:45 PM, Frank Stock wrote:

Hi,

I use SOAP-calls to WO and I get strange effects in the following
routine:

public void deleteWebtextValue (String webtext, String language) {
        
                EOEditingContext ec = new EOEditingContext();
                EOQualifier aQual;
                NSMutableArray qbind;
                EOFetchSpecification fs;
                
                LanguageWebtext lwObject;
                qbind=new NSMutableArray();
                qbind.addObject(webtext);
                qbind.addObject(language);
                aQual = EOQualifier.qualifierWithQualifierFormat
("(webtext.webtext=%@) and (language.language=%@)",qbind);
                fs = new EOFetchSpecification("LanguageWebtext",aQual,null);
                NSArray arLanguageWebtext = 
ec.objectsWithFetchSpecification(fs);
                // should only be 1
                for (int i=0;i< arLanguageWebtext.count();i++) {
                        lwObject = 
(LanguageWebtext)arLanguageWebtext.objectAtIndex(i);
                        ec.deleteObject(lwObject);
                }
                ec.saveChanges();
                
        }

Most of the time this results in a delete-statement:
delete from languagewebtext where languagewebtext_id=8788;

but sometimes I get a (strange) update-statement:

update languagewebtext set language_id = NULL, webtext_id = NULL
where languagewebtext_id=8898;
Both can't be NULL;
This results in currupting the database!

I don't understand that!


Thanks for helping,
Frank Stock
 _______________________________________________
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/kenlists%
40anderhome.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]

--

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







------------------------------

_______________________________________________
Webobjects-dev mailing list
[email protected]
http://lists.apple.com/mailman/listinfo/webobjects-dev

End of Webobjects-dev Digest, Vol 4, Issue 212
**********************************************


_______________________________________________
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]

Reply via email to