On Jan 13, 2010, at 4:04 AM, Gennady Kushnir wrote:

may this be the reason?

   public void setWeight(BigDecimal aValue) {
      if(weight().compareTo(aValue) != 0) {
           if(weight().compareTo(BigDecimal.ZERO) == 0
                           || aValue.compareTo(BigDecimal.ZERO) == 0)
                   _integralPresenter = null;
                   super.setWeight(aValue);
      }
   }
        
        public BigDecimal weight() {
                BigDecimal weight = super.weight();
                if(weight == null) return null;
                if(weight.compareTo(BigDecimal.ZERO) == 0)
                        return BigDecimal.ZERO;
                weight = weight.stripTrailingZeros();
                if(weight.scale() < 0)
                        weight.setScale(0);
                return weight;
        }

where weight is EO attribute

I don't think that will cause this problem.


And another guess: fetching from the same ec for setting default
values in awakeFromInsertion?

That is OK.

Chuck



2010/1/12 Chuck Hill <ch...@global-village.net>:

On Jan 11, 2010, at 2:14 PM, Gennady Kushnir wrote:

I am on MySQL 5.0.x
I don't use change notification framework.
Stack trace of exception says it is raised during ec.saveChanges().

May it be caused by using nested editing contexts?

Maybe if you are using them incorrectly.


Unfortunately I have no idea how to isolate a problem. I can not even
reproduce it.
Myself I have only seen it once "in action". Mostly I can only see it
in logs. And I can't afford to limit functionality of a working
system.
Furthermore I assume it is in the most actively employed part of a
system. As most errors take place there. But maybe it is only because
the majority of saves are performed there...

Maybe I could diagnose the problem injecting some testing somewhere?
Maybe in editingContext subclass?

I'd start by taking a careful look at the full exception stack traces to see
if you can isolate where this is happening and then go back and very
carefully review that code.

After that, you would need to start disassembling the Java to see where things go wrong and try and get some information logged out. That may require replacing parts of EOF. This is far easier with Wonder but it is still not easy. I have had the most success by carefully looking at the
code after looking at the stack traces.


Chuck




2010/1/11 Kieran Kelleher <kieran_li...@mac.com>:

On Jan 11, 2010, at 1:59 PM, Chuck Hill wrote:

On Jan 11, 2010, at 10:33 AM, Kieran Kelleher wrote:

On Jan 11, 2010, at 1:03 PM, Chuck Hill wrote:

On Jan 11, 2010, at 4:26 AM, Gennady Kushnir wrote:

Hello again.
I've got it that I was doing something wrong. I've found and removed several commandments violations, employed MultiECLockManager for properly locking everything... but I am still getting these errors! How could I track where is that violation hidden within over 5000
rows
of code?

There are many, many ways in which things can be done wrong. I don't
know of any easy way to find the source.  If you can isolate and
reproduce
the problem in a minimum set of steps, that will reduce the amount of
code
you have to look at.


These errors raise without any visible dependencies.
Users report that even when system says that it could not save
something (because of that strange error), actually data is saved and
can be reviewed after logging out and in again.

Something else is happening in your code then. Perhaps this is not
from
a save? Nothing should get written to the database if this happens
during a
saveChanges.  Maybe this is happening in your app just after
saveChanges()?

Hmmm ....... half-saving transactions is a common problem when you
don't
use a transactional database and no "transaction rollback" is available
when
ec fails during a save. What database engine are you using?


Now who would use a squirrelly mock database like that?!!?


Someone who acquires a Ferrari and drives it in first gear because they
have
never used a "stick-shift" car before! :-P



:-P

Chuck

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










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









--
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      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to