Re: [AOLSERVER] alloc: invalid block errors

2002-11-06 Thread Simon Millward
You might be interested in taking a look at the automated testing package that now comes as part of the openACS 4.5/6 core.

its actually a framework for organising, deploying and state-setting fo indepenent auto tests (much akin to XP style approach to testing). Although not the same as what your describing, again there is some crossover,and perhaps its another cross-community opportunity.


On Tuesday, November 5, 2002, at 08:21  pm, Scott S. Goodwin wrote:

I've been setting up a framework within which to consistently fit automated test scripts. I'm using nsopenssl as my first example. I will release the framework as soon as it is fully functional for community review and comment. Some features: It compiles all source code, configures all software, and run all tests in a fully automated way, all without being root.
 
Don't let this stop you from writing manual or automated tests -- it should be fairly straightforward to migrate that code into the framework.
 
 
/s.


-Original Message-
From: AOLserver Discussion [mailto:[EMAIL PROTECTED]] On Behalf Of Nathan Folkman
Sent: Tuesday, November 05, 2002 1:57 PM
To: [EMAIL PROTECTED]
Subject: Re: [AOLSERVER] alloc: invalid block errors

In a message dated 11/5/2002 2:56:05 PM Eastern Standard Time, [EMAIL PROTECTED] writes:

That'll be cool.  Set something up to ns_schedule_proc -thread and see
if your thread creation/cleanup shows anything funny going on.  Throw in
lots of nsv_set and nsv_unset in there.

I'm going to get a copy of nstelemetry.adp and see if anything funny is
happening.

-- Dossy



Perhaps these test scripts could form the foundation of a generic test suite. I know Scott has been thinking a lot about this.

- n



Re: [AOLSERVER] alloc: invalid block errors

2002-11-06 Thread Scott S. Goodwin
Title: Message



I'm 
about a month from having the current test framework operational. I'll check out 
the OpenACS testing functionality this weekend. Thanks for the 
pointer.

/s.


  
  -Original Message-From: AOLserver 
  Discussion [mailto:[EMAIL PROTECTED]] On Behalf Of Simon 
  MillwardSent: Wednesday, November 06, 2002 3:55 AMTo: 
  [EMAIL PROTECTED]Subject: Re: [AOLSERVER] alloc: invalid 
  block errorsYou might be interested in taking a look at 
  the automated testing package that now comes as part of the openACS 4.5/6 
  core.its actually a framework for organising, deploying and 
  state-setting fo indepenent auto tests (much akin to XP style approach to 
  testing). Although not the same as what your describing, again there is some 
  crossover,and perhaps its another cross-community opportunity.On 
  Tuesday, November 5, 2002, at 08:21 pm, Scott S. Goodwin wrote:
  I've 
been setting up a framework within which to consistently fit automated test 
scripts. I'm using nsopenssl as my first example. I will releasethe 
frameworkas soon as it is fully functional for community review and 
comment. Some features: It compiles all source code, configures all 
software, and run all tests in a fully automated way, all without being 
root.Don't 
let this stop you from writing manual or automated tests -- it should be 
fairly straightforward to migrate that code into the framework./s.-Original 
Message-From: AOLserver Discussion 
[mailto:[EMAIL PROTECTED]] On Behalf Of Nathan 
FolkmanSent: Tuesday, November 05, 2002 1:57 PMTo: 
[EMAIL PROTECTED]Subject: Re: [AOLSERVER] alloc: invalid 
block errorsIn a message dated 11/5/2002 
2:56:05 PM Eastern Standard Time, [EMAIL PROTECTED] writes:That'll 
be cool. Set something up to ns_schedule_proc -thread and seeif 
your thread creation/cleanup shows anything funny going on. Throw 
inlots of nsv_set and nsv_unset in there.I'm going to get a copy 
of nstelemetry.adp and see if anything funny ishappening.-- 
DossyPerhaps these test scripts could form the foundation of 
a generic test suite. I know Scott has been thinking a lot about 
this.- 
n


Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Zoran Vasiljevic
On Tuesday 05 November 2002 16:59, you wrote:
 I'm on Solaris 2.8, AOLserver 3.5.0 and Tcl 8.4.1, gcc 2.95.3.

You're sure you do not have any corpses of libtcl8.4.so build with
some alpha release (Tcl8.4.0a4 or earlier) lying arround, eventually
picked by the DSO loader?
Just to make sure, because the bugreport you're reffering to is
considered fixed and the 8.4.1 has the patch already applied.

Cheers
Zoran



Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Dossy
On 2002.11.05, Zoran Vasiljevic [EMAIL PROTECTED] wrote:
 On Tuesday 05 November 2002 16:59, you wrote:
  I'm on Solaris 2.8, AOLserver 3.5.0 and Tcl 8.4.1, gcc 2.95.3.

 You're sure you do not have any corpses of libtcl8.4.so build with
 some alpha release (Tcl8.4.0a4 or earlier) lying arround, eventually
 picked by the DSO loader?

Nope, absolutely positive.  The only Tcl on this system is the 8.4.1
that was built.

 Just to make sure, because the bugreport you're reffering to is
 considered fixed and the 8.4.1 has the patch already applied.

That's why I'm asking.  :-)

-- Dossy

--
Dossy Shiobara   mail: [EMAIL PROTECTED]
Panoptic Computer Network web: http://www.panoptic.com/
  He realized the fastest way to change is to laugh at your own
folly -- then you can let go and quickly move on. (p. 70)



Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Zoran Vasiljevic
On Tuesday 05 November 2002 17:25, you wrote:

  Just to make sure, because the bugreport you're reffering to is
  considered fixed and the 8.4.1 has the patch already applied.

 That's why I'm asking.  :-)


Another try...
Do you use clock format ... -gmt 1 somewhere in your Tcl code?



Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Zoran Vasiljevic
On Tuesday 05 November 2002 18:06, you wrote:

  Another try...
  Do you use clock format ... -gmt 1 somewhere in your Tcl code?

 clock format, but not with -gmt 1.


Hm, first line of defence did not hold :(

So, somebody is freeing (or reallocating) already freed
memory or just passing bogus address to the allocator.

This *could* be tricky...

I have extensively checked the new allocator with Purify
since it was introduced in 8.4.0. It works fine.
We did not have any memory-related problems reported
since 8.4.0 AFAIK, but this should't be of much importance
because majority of Tcl users run w/o threads. Hm...

Do you have any home-brewn C-level extensions loaded?
Or, better yet, what extensions do you have loaded?

The problem is *probably* somewhere in thread-exit.
You say, you kick a thread or two with ns_schedule_proc?
There might be something bad happening during teardown.
It would be interesting to know wether the same (core)
happens when/if you (can) schedule a proc w/o extra thread
(i.e. w/o -thread option)?

Zoran



Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Zoran Vasiljevic
On Tuesday 05 November 2002 18:06, you wrote:

  Another try...
  Do you use clock format ... -gmt 1 somewhere in your Tcl code?

 clock format, but not with -gmt 1.

 -- Dossy

Ahhh... can you fire up the server with gdb, put a break-point on
tclThreadAlloc.c:748 and give it a go? Maybe we'll see more on
the backtrace...

Zoran



Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Dossy
On 2002.11.05, Zoran Vasiljevic [EMAIL PROTECTED] wrote:

 Do you have any home-brewn C-level extensions loaded?
 Or, better yet, what extensions do you have loaded?

Nope.  The only thing that's loaded is nssock.  No nslog
even!

It's a series of Tcl proc's, some of which get registered as
ns_register_proc to handle HTTP requests, one that gets
scheduled using ns_schedule_proc, and others that get
called by those procs.

Extensive use of nsv's to persist memory in the running nsd,
and the ns_schedule_proc'ed periodically goes through the
memory stored in nsv's and persists it to disk and nsv_unset's
things.

 The problem is *probably* somewhere in thread-exit.
 You say, you kick a thread or two with ns_schedule_proc?
 There might be something bad happening during teardown.
 It would be interesting to know wether the same (core)
 happens when/if you (can) schedule a proc w/o extra thread
 (i.e. w/o -thread option)?

Since this is a production system, and this error only occured
once so far, I'm not inclined to go tinkering with it.  I've
never been able to get this problem to occur in the dev. environment
even under load, so I'm perplexed.

I'm going to be keeping an eye on it.  Hopefully if this happens again,
it'll drop a core file -- previously, the directory I started nsd from
was owned by root and not writable by the user nsd was -u'ed to run as.
I've changed that, so hopefully I'll get a corefile next time.

-- Dossy

--
Dossy Shiobara   mail: [EMAIL PROTECTED]
Panoptic Computer Network web: http://www.panoptic.com/
  He realized the fastest way to change is to laugh at your own
folly -- then you can let go and quickly move on. (p. 70)



Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Dossy
On 2002.11.05, Zoran Vasiljevic [EMAIL PROTECTED] wrote:
 On Tuesday 05 November 2002 18:06, you wrote:

   Another try...
   Do you use clock format ... -gmt 1 somewhere in your Tcl code?
 
  clock format, but not with -gmt 1.
 
  -- Dossy

 Ahhh... can you fire up the server with gdb, put a break-point on
 tclThreadAlloc.c:748 and give it a go? Maybe we'll see more on
 the backtrace...

Wish I could, but this is a production system.  I just spotted the error
in server.log by luck when I noticed that nsd had been restarted without
anyone scheduling a restart.

The best I can do is hope to get a usable corefile next time this
happens.

-- Dossy

--
Dossy Shiobara   mail: [EMAIL PROTECTED]
Panoptic Computer Network web: http://www.panoptic.com/
  He realized the fastest way to change is to laugh at your own
folly -- then you can let go and quickly move on. (p. 70)



Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Zoran Vasiljevic
On Tuesday 05 November 2002 20:34, you wrote:
 The best I can do is hope to get a usable corefile next time this
 happens.

Please do!

In the meantime, I will try to exercise the 3.5.0/8.4.1 with Purify
over the weekend. Maybe this will bring some results.

Thanks,
Zoran



Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Dossy
On 2002.11.05, Zoran Vasiljevic [EMAIL PROTECTED] wrote:
 On Tuesday 05 November 2002 20:34, you wrote:
  The best I can do is hope to get a usable corefile next time this
  happens.

 Please do!

 In the meantime, I will try to exercise the 3.5.0/8.4.1 with Purify
 over the weekend. Maybe this will bring some results.

That'll be cool.  Set something up to ns_schedule_proc -thread and see
if your thread creation/cleanup shows anything funny going on.  Throw in
lots of nsv_set and nsv_unset in there.

I'm going to get a copy of nstelemetry.adp and see if anything funny is
happening.

-- Dossy

--
Dossy Shiobara   mail: [EMAIL PROTECTED]
Panoptic Computer Network web: http://www.panoptic.com/
  He realized the fastest way to change is to laugh at your own
folly -- then you can let go and quickly move on. (p. 70)



Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Zoran Vasiljevic
On Tuesday 05 November 2002 20:32, you wrote:

 Extensive use of nsv's to persist memory in the running nsd,
 and the ns_schedule_proc'ed periodically goes through the
 memory stored in nsv's and persists it to disk and nsv_unset's
 things.

Shouldn't be a problem at all.


  The problem is *probably* somewhere in thread-exit.
  You say, you kick a thread or two with ns_schedule_proc?
  There might be something bad happening during teardown.
  It would be interesting to know wether the same (core)
  happens when/if you (can) schedule a proc w/o extra thread
  (i.e. w/o -thread option)?

 Since this is a production system, and this error only occured
 once so far, I'm not inclined to go tinkering with it.  I've
 never been able to get this problem to occur in the dev. environment
 even under load, so I'm perplexed.

I understand. This might be one of the ugly race-conditions
which is difficult to track. Usually, they appear first there
where you do not expect them. Usually this is your first
and maybe most important customer...  (well, not in your case :)


 I'm going to be keeping an eye on it.  Hopefully if this happens again,
 it'll drop a core file -- previously, the directory I started nsd from
 was owned by root and not writable by the user nsd was -u'ed to run as.
 I've changed that, so hopefully I'll get a corefile next time.

This is very good. Don't forget to compile with -g and skip the -O opt,
otherwise we'll be out of luck even with the corefile.

Cheers
Zoran



Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Nathan Folkman
In a message dated 11/5/2002 2:56:05 PM Eastern Standard Time, [EMAIL PROTECTED] writes:

That'll be cool. Set something up to ns_schedule_proc -thread and see
if your thread creation/cleanup shows anything funny going on. Throw in
lots of nsv_set and nsv_unset in there.

I'm going to get a copy of nstelemetry.adp and see if anything funny is
happening.

-- Dossy

Perhaps these test scripts could form the foundation of a generic test suite. I know Scott has been thinking a lot about this.

- n


Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Scott S. Goodwin
Title: Message



I've 
been setting up a framework within which to consistently fit automated test 
scripts. I'm using nsopenssl as my first example. I will releasethe 
frameworkas soon as it is fully functional for community review and 
comment. Some features: It compiles all source code, configures all software, 
and run all tests in a fully automated way, all without being 
root.

Don't 
let this stop you from writing manual or automated tests -- it should be fairly 
straightforward to migrate that code into the framework.


/s.

  
  -Original Message-From: AOLserver 
  Discussion [mailto:[EMAIL PROTECTED]] On Behalf Of Nathan 
  FolkmanSent: Tuesday, November 05, 2002 1:57 PMTo: 
  [EMAIL PROTECTED]Subject: Re: [AOLSERVER] alloc: invalid 
  block errorsIn a message dated 11/5/2002 2:56:05 PM 
  Eastern Standard Time, [EMAIL PROTECTED] writes:
  That'll be cool. Set something up to ns_schedule_proc 
-thread and seeif your thread creation/cleanup shows anything funny 
going on. Throw inlots of nsv_set and nsv_unset in 
there.I'm going to get a copy of nstelemetry.adp and see if anything 
funny ishappening.-- DossyPerhaps these test 
  scripts could form the foundation of a generic test suite. I know Scott has 
  been thinking a lot about this.- n 



Re: [AOLSERVER] alloc: invalid block errors

2002-11-05 Thread Peter M. Jansson
On Tuesday, November 5, 2002, at 03:21 PM, Scott S. Goodwin wrote:


Don't let this stop you from writing manual or automated tests -- it
should be fairly straightforward to migrate that code into the framework.


Or from using other quality management tools than testing -- those get
forgotten a lot, and you can't test in quality.