Mesquite Software

Home
Products and FAQ
Customers
To Order
Contact Us
Site Map
Documentation
News & Events

Purchase & Download
Or, log in here to
access your account.
 
Documentation
User Guide: C : Error Messages

22. Error Messages

The following error messages can be printed by a CSIM program which detects a problem. With each error message is its index (see section 21.4.3, "Conclude_flag.)

Sometimes, it is necessary to delete some or all of the resources in a model prior to ending a run. In this case, an error can be caused when a resource is deleted - an example would be deleting an event when there are processes in one of the queues. In some cases, the resource should be deleted without causing this error. If the
_conclude_flag variable is non-zero, such errors will be ignored.

Prototype: void set_conclude_flag(void)

Error Handling" for the usage of indexes), and a brief interpretation:

1

NEGATIVE EVENT TIME

You tried to schedule an event to occur at a negative time.  The probable cause is either a negative hold interval or a program which has truly run away.

2

EMPTY EVENT LIST

Every active process is waiting for an event to occur, and there is no process which can cause an event to happen (this is a common error)  Possible causes for this error are:

  •  A create statement was left out of a process
  • There is a deadlock
  • There is a subtle error in process synchronization

If it is none of these, use the debugging switch(es), to try to find out what was going on when disaster struck.

3

RELEASE OF IDLE/UNOWNED FACILITY

A process has attempted to release a facility which it did not own.

4

(not used)

 

5

PROCESS SHARING TASK LIMIT EXCEEDED

An attempt was made to have more than 100 processes at a facility declared with the prc_shr service function.

6

NOTE FOUND CURRENT STATE LESS THAN ZERO

You issued either a note_entry  or a note_exit to store a value in a qtable or qhistogram, and the current state (current queue length) was less than zero.  One cause of this error is that more note_exit statements than note_entry statements to have been executed.

7

ERROR IN DELETE EVENT

The delete_event procedure was called and one of the following failures occurred:

  • The argument was NIL

8

ERROR IN DELETE MAILBOX

The delete_mailbox procedure was called and one of the following failures occurred:

  • The argument was NIL

9

MALLOC FAILURE

The UNIX routine named malloc was unable to allocate more memory to the program.  Malloc is used to allocate space for process control units, so this usually occurs when many processes are simultaneously active.  The only cures are to either have fewer processes or to have the UNIX limits on virtual memory changed on your system.

10

IN PREEMPT, ERROR IN CANCEL EVENT FOR PROCESS (INTERNAL ERROR)

The processor sharing or last-come, first-served service disciplines have tried to preempt a process which does not hold the facility.  This is a CSIM error and should not occur.

11

ILLEGAL EVENT TYPE (INTERNAL ERROR)

The procedure for creating events has been called with a mode (type) parameter which is not recognizable.  This is a CSIM error and should not occur.

12

TOO MANY EVENTS

The limit on the number of events which can be simultaneously in existence is being exceeded.  Either:

  • The program needs more events (see the max_events function) or
  • You've created more events than you intended in your program

13

TOO MANY FACILITIES

The limit on the number of facilities which can be simultaneously in existence is being exceeded.  Either:

  • The program needs more facilities (see the max_facilities function)
  • You've created more facilities than you intended in your program

14

TOO MANY HISTOGRAMS

The limit on the number of histograms which can be simultaneously in existence is being exceeded.  Either:

  • The program needs more histograms (see the max_histograms function) or
  • You've created more histograms than you intended in your program

15

TOO MANY MAILBOXES

The limit on the number of mailboxes which can be simultaneously in existence is being exceeded.  Either:

  • The program needs more mailboxes (see the max_mailboxes function) or
  • You've created more mailboxes than you intended in your program

16

TOO MANY MESSAGES

The limit on the number of messages which can be simultaneously in existence is being exceeded.  Either:

  • The program needs more messages (see the max_messages function) or
  • You've created more messages than you intended in your program

17

TOO MANY PROCESSES

The limit on the number of processes which can be simultaneously in existence is being exceeded.  Either:

  • The program needs more processes (see the max_processes function) or
  • You've created more processes than you intended in your program

18

CONFIDENCE LEVEL MUST BE BETWEEN 0.0 AND 1.0

  • In a call to run_length (table or qtable), an illegal value for the confidence level was specified

19

TOO MANY STORAGES

The limit on the number of storage units which can be simultaneously in existence is being exceeded.  Either:

  • The program needs more storage units (see the max_storages function) or
  • You've created more storage units than you intended in your program

20

TOO MANY SERVERS

The limit on the number of servers which can be simultaneously in existence is being exceeded.  Either:

  • The program needs more servers (see the max_servers function)
  • You've created more servers than you intended in your program

21

INVALID TIMESTAMP IN CALL TO EXIT_BOX

The value of the parameter in a call to exit_box is either less than zero or greater than the value of the simulated clock

22

not used

 

23

not used

 

24

TRIED TO RETURN AN UNALLOCATED PCB

This is a CSIM error and should not occur.

25

TRIED TO CHANGE MAXIMUM CLASSES AFTER COLLECT

You cannot change the limit on process classes after a collect_class_facility [all] statement.

26

TOO MANY CLASSES

The limit on the number of classes which can be simultaneously in existence is being exceeded.  Either:

  • The program needs more process classes (see the max_classes function) or
  • You've created more classes than you intended in your program

27

IN RETURN EVENT, FOUND WAITING PROCESS

An attempt was made to delete a local event, but a process is waiting for that event.  A local event is deleted either by use of a delete_event statement or when the process which initialized that event terminates.

28

TRIED TO DELETE EMPTY EVENT SET

An attempt was made to delete an event_set structure which is not initialized.

29

TRIED TO WAIT ON NIL EVENT SET

The wait_any or queue_any function was passed a NIL pointer (argument).

30

WAIT_ANY ERROR, NIL EVENT

This is an internal error in the wait_any or queue_any function.  The function thinks that an event in the set occurred, but it did not find one.  This is a CSIM error and should not occur.

31

STORAGE DEALLOCATE ERROR: CURRENT COUNT < 0

The deallocate procedure has detected a negative value for the current number of users at a storage unit (more allocates than deallocates were done).  This is probably the result of having some processes doing a deallocate without a prior allocate operation.  Note that this error can result regardless of the amount of storage allocated and deallocated.

32

TIMED_RECEIVE ERROR - MSG WAS LOST

There was a failure in timed_receive.  This is a CSIM error and should not occur.

33

MULTISERVER FACILITY- ZERO OR NEG. NUMBER OF SERVERS

A multi-server facility was defined with the number of servers less than or equal to zero.

34

TRIED TO CHANGE MAX_CLASSES AFTER CREATING PROCESS CLASSES

You can't change the maximum number of process classes after a collect_class_facility or collect_class_facility_all has been executed.

35

ASKED FOR STATS ON NON-EXISTENT SERVER

You called a function that retrieves information about a server and specified an out-of-range server number.

36

ERROR IN CALENDAR QUEUE INIT

This is a CSIM error and should not occur.

37

ERROR IN DELETE FACILITY

The delete_facility procedure was called and one of the following failures occurred:

  • The argument was NIL
  • The argument did not point to a facility

38

ERROR IN DELETE PROCESS CLASS

The delete_process_class procedure was called and one of the following failures occurred:

The argument was NIL

The argument did not point to a process class

39

ERROR IN DELETE QTABLE

The delete_qtable procedure was called and one of the following failures occurred:

  • The argument was NIL
  • The argument did not point to a qtable or qhistogram

40

ERROR IN DELETE STORAGE

The delete_storage procedure was called and one of the following failures occurred:

  • The argument was NIL
  • The argument did not point to a storage unit

41

ERROR IN DELETE TABLE

The delete_table procedure was called and one of the following failures occurred:

  • The argument was NIL
  • The argument did not point to a table or histogram

42

IN TIMED-, ERROR IN CANCEL EVENT FOR PROCESS (INTERNAL ERROR)

Either timed_queue, timed_receive or timed_wait has tried to cancel a hold for a process, and the process cannot be found in the next_event_list.  This is a CSIM error and should not occur.

43

STACK UNWIND FAILURE - HPPA (INTERNAL ERROR)

This is a CSIM error and should not occur.

44

ODD OR SMALL STACK LENGTH - HPPA (INTERNAL ERROR)

This is a CSIM error and should not occur.

   

45

SET_STACK ROUTINES MAY NOT BE INVOKED AFTER CALLING CREATE - HPPA

This is a CSIM error and should not occur.

46

UNRECOVERABLE STACK OVERFLOW - HPPA

This is a CSIM error and should not occur.

47

INITIAL STACK SIZE TOO SMALL - HPPA

This is a CSIM error and should not occur.

48

EMPIRICAL DISTRIBUTION: n EXCEEDS 100

For an empirical distribution, you cannot have more than 100 values.

49

FACILITY CREATED WITH NUM SERVERS <= 0

Attempted to create a multi-server facility with no servers

50

(NOT USED)

 

51

(NOT USED)

 

52

UNIFORM DISTRIBUTION: MAX < MIN

You called the uniform(min, max) function with max < min

53

TRIANGULAR DISTRIBUTION: PARAMETER ERROR

In a call to triangular(min, max, mode) either min < max or
mode < min or mode > max

54

GAMMA DISTRIBUTION: PARAMETER ERROR

In a call to gamma(mean, stddev), either mean <= 0.0 or
stddev <= 0.0.

55

EXPONENTIAL DISTRIBUTION: MEAN < 0.0

In a call to exponential(mean), mean <= 0.0

56

ERLANG2 DISTRIBUTION: PARAMETER ERROR

In a call to erlang2(mean, stddev), either mean <= 0.0 or
stddev <= 0.0 or stddev >= mean

57

HYPERX DISTRIBUTION: VARIANCE <= MEAN*MEAN

In a call to hyperx(mean, var), var <= mean2

58

BETA DISTRIBUTION: PARAMETER ERROR

In a call to beta(min, max, shape1, shape2), either max <= min
or shape1 <= 0.0 or shape2 <= 0.0

59

WEIBULL DISTRIBUTION: PARAMETER ERROR

In a call to weibull(shape, scale), either shape <= 0.0 or
scale <= 0.0

60

LOGNORMAL DISTRIBUTION: MEAN <= 0.0

In a call to lognormal(mean, stddev), mean <= 0.0

61

CAUCHY DISTRIBUTION: XBETA <= 0.0

In a call to cauchy(alpha, beta), beta <= 0.0

62

UNIFORM_INT DISTRIBUTION: MAX < MIN

In a call to uniform_int(min, max), max < min

63

BERNOULLI DISTR.: PROB. SUCCESS < 0.0 OR > 1.0

In a call to bernoulli(probSuccess), either probSuccess < 0.0
or probSuccess > 1.0

64

BINOMIAL DISTRIBUTION: PARAMETER ERROR

In a call to binomial(probSuccess, numTrials), either
probSuccess <= 0.0 or probSuccess >= 1.0 or numTrials < 1

65

GEOMETRIC DISTR.: PROB. SUCCESS <= 0.0 OR >= 1.0

In a call to geometric(probSuccess), either probSuccess <= 0.0
or probSuccess >= 1.0

66

NEG. BINOMIAL DISTRIBUTION: PARAMETER ERROR

In a call to negative_binomial(successNum, probSuccess)
either successNum <= 0.0 or probSuccess <= 0.0 or
probSuccess >= 1.0

67

POISSON DISTRIBUTION: MEAN <= 0.0

In a call to poisson(mean), mean <= 0.0

68

(NOT USED)

 

69

(NOT USED)

 

70

BUFFER: ERROR IN DELETE_BUFFER

In a call to delete_buffer(bfr), bfr is NIL

71

BUFFER: REMOVE_SPACE ERROR

In a call to buffer_remove_space(bft, amt), amt is greater than the amount of space in the buffer

72

(NOT USED)

 

73

TOO MANY BUFFERS

Tried to too many buffers; either reduce the number of buffers created or increase max_buffers

74

STORAGE: REMOVE ERROR

In a call to remove_store(store, size), either size exceeds the amount of storage currently available or the original amount of storage

75

PARETO DISTRIBUTION: PARAMETER <= 0.0

In a call to pareto(a), a <= 0.0

76

SETUP_EMPIRICAL - ERROR IN PROB. ARRAY

In a call to setup_empirical, the sum of the probabilities specified is not equal to 1.0

77

RUN_LENGTH: ACCURACY MUST BE > 0.0 AND < 1.0

In a call to table_run_length or qtable_run_length, either
accuracy <= 0.0 or accuracy >= 1.0

78

RUN_LENGTH: CPU MAX MUST BE > 0.0

In a call to table_run_length or qtable_run_length, the maximum cpu time specification is <= 0.0

79

NEXT-EVENT-LIST ERROR: TIME GOING BACKWARDS

An error has occurred in the routines that manage the next_event_list; please contact Mesquite Software, Inc.

80

TRIED TO DELETE EMPTY MAILBOX SET

In a call to delete_mailbox_set, the pointer is NIL

81

TRIED TO RECEIVE ON EMPTY MAILBOX SET

In a call to receive_any, the pointer is invalid

82

TIMED_PUT (BUFFER): NEGATIVE TIME-OUT

In a call to buffer_timed_put, the timeout interval is negative

83

TIMED_GET (BUFFER): NEGATIVE TIME OUT

In a call to buffer_timed_get, the timeout interval is negative

84

STORAGE: ALLOCATE OR DEALLOCATE NEG. AMT

In a call to allocate, alloc, deallocate, dealloc, timed_allocate or timed_alloc, passed an amount which is negative


 
Home | Products/FAQ | Customers | To Order | Contact Us | Site Map | Documentation
© copyright 2005, Mesquite Software, all rights reserved.