Closed
Bug 9049
Opened 27 years ago
Closed 26 years ago
update stops working with very large attribute lists
Categories
(Directory Graveyard :: PerLDAP, defect, P1)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: kmccarth, Assigned: leif)
Details
Attachments
(1 file)
|
3.23 KB,
patch
|
Details | Diff | Splinter Review |
Posted in newsgroup:
I am using Perl 5.004_04, PerLDAP 1.22 on Solaris 2.51. I've written
some administrative programs to manipulate groupOfUniqueNames
objectclasses in LDAP. [These are used to restrict access to parts of a
web server using Enterprise Server].
My programs have been working, until today. It seems I've hit a size
limit of some kind. I was trying to remove a uniquemember entry from an
object with 4085 entries in it. I tracked the problem down to a line in
Entry.pm, removeValue(), line 368:
@{$self->{"_self_obj_"}->{"_${attr}_save_"}} = @{$self->{$attr}}
unless
defined($self->{"_${attr}_save_"});
This line was failing. The _${attr}_save_ did not receive the values
from $attr. It has a size of 0 after the assignment (and should have
been 4085)
I changed the line to read:
$self->{"_self_obj_"}->{"_${attr}_save_"} = [ @{$self->{$attr}} ]
unless
defined($self->{"_${attr}_save_"});
This version worked. I'm assuming this is a Perl bug, something to do
with array assignment as opposed to populating a reference to an array
can hold more values. Since this second version is working for me, I
would like to get some feedback, and if favorable, merge the change into
the code. This change would need to be made in about 5 places in
Entry.pm.
Thanks,
Kevin McCarthy
kmccarth@baynetworks.com
| Reporter | ||
Updated•27 years ago
|
OS: Windows 95 → Solaris
Priority: P3 → P1
Hardware: PC → Sun
| Reporter | ||
Comment 1•27 years ago
|
||
| Assignee | ||
Updated•27 years ago
|
Status: NEW → ASSIGNED
| Assignee | ||
Comment 2•26 years ago
|
||
Leif Hedstrom <leif@netscape.com> writes:
>Nick Ing-Simmons wrote:
>
>> I'd suggest changing the default in the Config.pm that you ship to
>> default to -Od (or whatever the "safest" value is).
>> Reasoning here is that those that have the expertise to dork with
>> this stuff can still dork it back to -O2, while those that don't are
>> more likely to get something that works "out of the box".
>
>Ahh, makes a lot of sense. Thanks for all the suggestions, I'm going to
>try it again as soon as I possibly can. Does anyone know if this
>optimization bug is in VC++ 5.0 only, or is it in 6.0 as well?
There is more than one bug. For ages VC++ could not build perl with -O2.
Then some service pack to VC5 allowed that, but still could not build
Tk.
FWIW (and it ain't worth what I paid for it) VC6.0 Professional _does_
seem to be able to build Tk800.014 with -O2.
>I remember
>having a similar problem when compiling Perl on NT with VC++ v5.0, and
>setting optimization to just /O (I think) helped (otherwise the build
>wouldn't even pass Perl's regression tests...).
>
>Btw, how hard is it to create a binary install package that I can send to
>my ActivePerl users?
Quite easy. Tinker with top-level Makefile.PL then tar up the blib
attached is mail that helped me.
--
Nick Ing-Simmons <nik@tiuk.ti.com>
Via, but not speaking for: Texas Instruments Ltd.
| Assignee | ||
Comment 3•26 years ago
|
||
IGNORE THE LAST COMMENT, I PUT IT IN THE WRONG BUG...
| Assignee | ||
Updated•26 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 26 years ago
Resolution: --- → FIXED
| Assignee | ||
Comment 4•26 years ago
|
||
Fixed as suggested.
You need to log in
before you can comment on or make changes to this bug.
Description
•