If I remember correctly, and tell me if things have changed, indexed
I-descriptors and correlatives that do translates from other files do
not update indexes. This is one reason for building indexes
periodically.

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Scott Ballinger
Sent: Tuesday, February 06, 2007 3:59 PM
To: u2-users@listserver.u2ug.org
Subject: Spam:RE: [U2] Index Problem

Hi Brenda,

1. It is probably only necessary to rebuild the index(es) when you have
a known corruption issue. I think all indexed fields (I-type or not) are
(re-)evaluated with every write; U2 indexes are self-updating.
2. If BAD.ADDR is just used to identify bad addresses, consider changing
the I-type to return either 1 or null, and create the index using the
NO.NULLS option?
3. However, does the BAD.ADDR field exist for selecting and totaling?
Else why not just index the BAD.ADD field itself? It's probably
marginally faster to build/maintain an index on a "real" field than on
an I-type field.

OT question for the list: is the practice of rebuilding indexes
(nightly?) common? Why? I use a lot of indexes on large and active
files, and very rarely have to rebuild them. Rebuilding indexes on a
periodic basis looks like a little too much of the belt AND suspenders
mindset. Are the U2 databases really so un-reliable that we have to
resort to these sorts of hacks? (Actually, IMO they are very reliable
and no you don't.)

/Scott Ballinger
Pareto Corporation
Edmonds WA USA
206 713 6006

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Brenda Price
Sent: Tuesday, February 06, 2007 10:38 AM
To: u2-users@listserver.u2ug.org
Subject: [U2] Index Problem

Last night a process that sleeps until around 2-3 am, then wakes up and
does a BUILD.INDEX CUST.MSTR ALL failed.  One of the indices BAD.ADDR
was locked and failed which stopped all the other indices from building.
So when we came in this morning nothing had been done from that point
on.



I've changed the process to build each index one at a time instead of
the ALL option, so if one fails the rest continues, which will slow it
down somewhat but is safer.  Plus only the indices that are correctives
will be rebuilt.



This happened before in May 2006 and I am pretty sure that it was the
exact index (BAD.ADDR) that hung us.



The dict is this:



BAD.ADDR

<1> I

<2> IF BAD.ADD = "Y" THEN 1 ELSE 0

<3>

<4>

<5>1R

<6>S



BAD.ADD

<1>A

<2>44

<3>Bad^253Add

<4>

<5>

<6>

<7>

<8>

<9>L

<10>1



On our test system, I've changed BAD.ADDR, deleted the index, created
the index, and built it again as I was wondering if it was having
problems from using another dictionary item.  Once a window of
opportunity happens I'll do the same on our live system.



<1>I

<2> IF @RECORD<44> = "Y" THEN 1 ELSE 0

<3>

<4>

<5>1R

<6>S



No one really thinks that is going to matter but I'm grasping at straws.
Any ideas?



Brenda Price

Affiliated Acceptance Corporation

Sunrise Beach, Missouri
-------
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
-------
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
-------
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to