[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference azur::mcc

Title:DECmcc user notes file. Does not replace IPMT.
Notice:Use IPMT for problems. Newsletter location in note 6187
Moderator:TAEC::BEROUD
Created:Mon Aug 21 1989
Last Modified:Wed Jun 04 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:6497
Total number of notes:27359

1539.0. "Show Ident * -> first entities fast, last very slow" by UTES09::GOES (Paul Goes - T&N Digital Utrecht) Mon Sep 23 1991 07:26

Hello,

We've encountered a strange behaviour of the Registration FM.

We have registered four entity instances of the entity class PABX:
	.pabx_utrecht
	.pabx_nijmegen
	.pabx_oss
	.pabx_hoogeveen

If we now issue the directive : SHOW PABX * ALL IDENTIFIER the following
happens:
The PM places a verb 26 (is verb DIRECTORY) and on the return of that
call it places a verb 1 with partition 1 (is verb SHOW IDENT).
It does this four times.

But !!!:
The first three times the call with verb 26 returns immediately, but in the
last call it returns after two (!!!) minutes.

If we have only one entity registered, the SHOW * IDENT takes also two minutes.

If we have two entities registered, the first returns immediately and the last
takes also two minutes.

What makes the last return so slow ? Is it looking for more entities in DNS ?
Two minutes is quite a long time if you're waiting for a response (and there
is no indication that the process is still working) !

Another related question:

If I create two instances:
	.pabx_utrecht
	.pabx_nijmegen
and I register only one, lets say .pabx_utrecht.

The SHOW PABX * ALL IDENT will return the identifiers of only the registered
entity (as it places a directory directive first) and not of the non-registered
entity.

How can I dispatch a SHOW * IDENT that shows all the CREATED entities instead
of all the REGISTERED entities ? (I can create an entry-point for such a 
directive but if the PM handles the wildcard by placing a call-combination of a
DIRECTORY-directive and a SHOW <entity> -directive, it will never get called)

Is it possible to remove the directory-directive specification from the 
MS-file ? Will the PM then call my AM at the entry-point for all ident and 
with in_entity = FULL_INST_WILDCARD ???

Following is an output of the SHOW-ident *-directive showing that the
PM calls directory and show ident.


$ man /enter

DECmcc (V1.1.0)
MCC> show pabx * all ident


*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      26 
PARTITION code: 10 

....

*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      1 
PARTITION code: 1 

....

PABX HLMCC1_NS:.pabx_hoogeveen 
AT 23-SEP-1991 11:58:08 Identifiers

Examination of attributes shows:
                              Pabx Name = HLMCC1_NS:.pabx_hoogeveen


*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      26 
PARTITION code: 10 

....

*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      1 
PARTITION code: 1 

....

PABX HLMCC1_NS:.pabx_nijmegen 
AT 23-SEP-1991 11:58:09 Identifiers

Examination of attributes shows:
                              Pabx Name = HLMCC1_NS:.pabx_nijmegen


*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      26 
PARTITION code: 10 

....

*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      1 
PARTITION code: 1 

....

PABX HLMCC1_NS:.pabx_oss 
AT 23-SEP-1991 11:58:10 Identifiers

Examination of attributes shows:
                              Pabx Name = HLMCC1_NS:.pabx_oss


*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      26 
PARTITION code: 10 

....

*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      1 
PARTITION code: 1 

....

PABX HLMCC1_NS:.pabx_utrecht 
AT 23-SEP-1991 11:59:37 Identifiers

Examination of attributes shows:
                              Pabx Name = HLMCC1_NS:.pabx_utrecht


MCC>
T.RTitleUserPersonal
Name
DateLines
1539.1MCC is behaving as designedKAJUN::NELSONTue Sep 24 1991 14:47200
see "kjn>>"  below

...kjn

Hello,

We've encountered a strange behaviour of the Registration FM.

kjn>>  The behavior you have seen is the intended behaviour...

We have registered four entity instances of the entity class PABX:
	.pabx_utrecht
	.pabx_nijmegen
	.pabx_oss
	.pabx_hoogeveen

If we now issue the directive : SHOW PABX * ALL IDENTIFIER the following
happens:
The PM places a verb 26 (is verb DIRECTORY) and on the return of that
call it places a verb 1 with partition 1 (is verb SHOW IDENT).
It does this four times.

kjn>>  The PM is expanding the global instance wildcard.  Soooo, what 
kjn>>  you are seeing is the following:

	User says SHOW <class> * ALL IDENT
	PM goes to DECmcc instance DB (either DNS on VMS or local DB on ULTRIX)
	   with a DIRECTORY <class> *  to find out what is registered
	Then, for each registered instance of the specified class
	PM does SHOW <class> <instance> ALL IDENT

But !!!:
The first three times the call with verb 26 returns immediately, but in the
last call it returns after two (!!!) minutes.

kjn>>  Each call across the MCC_CALL interface (PM-FM) can return only
kjn>>  1 instance, so 4 registered instances will cause the PM to make 4
kjn>>  calls with verb 26 (DIRECTORY).  The last one take so long because
kjn>>  MCC is searching the entire namespace looking for instances of the
kjn>>  specified class.  We give you the flexibility to name your entity
kjn>>  any name you want so we have to search the namespace looking for
kjn>>  occurances of the specified class.  Sooo, the time to get a 
kjn>>  return is not a function of how many entities of the specified class
kjn>>  but of how many entities are in the instance database.


If we have only one entity registered, the SHOW * IDENT takes also two minutes.

If we have two entities registered, the first returns immediately and the last
takes also two minutes.

What makes the last return so slow ? Is it looking for more entities in DNS ?
Two minutes is quite a long time if you're waiting for a response (and there
is no indication that the process is still working) !

Another related question:

If I create two instances:
	.pabx_utrecht
	.pabx_nijmegen
and I register only one, lets say .pabx_utrecht.

The SHOW PABX * ALL IDENT will return the identifiers of only the registered
entity (as it places a directory directive first) and not of the non-registered
entity.

kjn>>  It was deliberate decision (in other words the product works as 
kjn>>  spec'd) to allow wildcard expansion to work only for REGISTERed 
kjn>>  instances.

How can I dispatch a SHOW * IDENT that shows all the CREATED entities instead
of all the REGISTERED entities ?

kjn>>  As far as I know, you can't. 

				(I can create an entry-point for such a 
directive but if the PM handles the wildcard by placing a call-combination of a
DIRECTORY-directive and a SHOW <entity> -directive, it will never get called)

kjn>> You are correct.

Is it possible to remove the directory-directive specification from the 
MS-file ? Will the PM then call my AM at the entry-point for all ident and 
with in_entity = FULL_INST_WILDCARD ???

kjn>> Nope.  In this case, the wildcard expansion will fail.
kjn>>  (Jill Callander might want to check me on this)

Following is an output of the SHOW-ident *-directive showing that the
PM calls directory and show ident.


$ man /enter

DECmcc (V1.1.0)
MCC> show pabx * all ident


*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      26 
PARTITION code: 10 

....

*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      1 
PARTITION code: 1 

....

PABX HLMCC1_NS:.pabx_hoogeveen 
AT 23-SEP-1991 11:58:08 Identifiers

Examination of attributes shows:
                              Pabx Name = HLMCC1_NS:.pabx_hoogeveen


*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      26 
PARTITION code: 10 

....

*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      1 
PARTITION code: 1 

....

PABX HLMCC1_NS:.pabx_nijmegen 
AT 23-SEP-1991 11:58:09 Identifiers

Examination of attributes shows:
                              Pabx Name = HLMCC1_NS:.pabx_nijmegen


*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      26 
PARTITION code: 10 

....

*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      1 
PARTITION code: 1 

....

PABX HLMCC1_NS:.pabx_oss 
AT 23-SEP-1991 11:58:10 Identifiers

Examination of attributes shows:
                              Pabx Name = HLMCC1_NS:.pabx_oss


*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      26 
PARTITION code: 10 

....

*****************************************************
*     FCL PM Arguments before call_function:        *
*****************************************************

VERB code:      1 
PARTITION code: 1 

....

PABX HLMCC1_NS:.pabx_utrecht 
AT 23-SEP-1991 11:59:37 Identifiers

Examination of attributes shows:
                              Pabx Name = HLMCC1_NS:.pabx_utrecht


MCC>

1539.2registration has "directory *" in dispatch tableTOOK::CALLANDERMCC = My Constant CompanionTue Sep 24 1991 15:429
The registration fm enrolls the entry point for directory, class *. this
means there is no way to stop it from going there unless you enroll
an entry point more specific (directory <specific class>). But, 
as kathy Jo warned, directory is a common service and if you do 
try to replace the registration fm function you must do so in
its entirity (like in domain spport) or else the fcl and iconic map
will have problems.

jill