[Glass] Fwd: nil objects are found in listInstances:?

Otto Behrens via Glass glass at lists.gemtalksystems.com
Fri Sep 25 08:57:37 PDT 2015


I found it! in topaz, the output level was 0. (topaz 1> level 0). This
printed nil because all the instVars of our destroyed object is nil,
and it failed to print anything useful.

so,

level 1
display oops
run
Object _objectForOop: 967292673
%

showed that I had in deed an instance of CollectiveInvestmentScheme.

Apologies for the false alarm.


---------- Forwarded message ----------
From: Otto Behrens <otto at finworks.biz>
Date: Fri, Sep 25, 2015 at 5:48 PM
Subject: nil objects are found in listInstances:?
To: "glass at lists.gemtalksystems.com" <glass at lists.gemtalksystems.com>


Hi,

I just encountered a situation I find hard to understand. I'm running
a GS 3.2.6 and I'm doing some migrations. So after all my fixing and
things, I check if I find any "destroyed" objects. These are objects
in our domain, where we set a special instVar called #objectState to
#destroyed.

I do this query to check:

System abortTransaction.
(SystemRepository listInstances: {CollectiveInvestmentScheme})
do: [ :instances |
(instances select: [ :i | i isDestroyed ])
ifNotEmptyDo: [ :destroyedObjects | self error: 'More destroyed CIS
objects: ' , (destroyedObjects collect: [ :o | o asOop ]) printString
] ]

And, alas, I get the error: More destroyed CIS objects: anArray(
967292673, 968180993, 968574465, 968610561...

The weird bit is:

Object _objectForOop: 967292673

returns nil!

I run my query again, and find the same results.

SystemRepository objectAudit reveals no problems.

Please help! Am I smoking my socks?

Cheers
Otto


More information about the Glass mailing list