Specified Slot Number Was Invalid
- Specified Slot Number Was Invalid May
- Specified Slot Number Was Invalid Will
- Specified Slot Number Was Invalid Due
Symptom: A switch running Cisco IOS may see these errors repeatedly, often at regular intervals:%CAPI-SW2-2-INVALIDSLOTNUM: Invalid slot number 0, Expected value is between 1 and 96 Conditions: This is only see on catalyst 6000 series switches. The errors will start after removal of a port channel interface ('no int Port-channel1' for example). Case NVMESCQIDINVALID: return ' QIDINVALID: The creation of the I/O Completion Queue failed due to an invalid queue identifier specified as part of the command. An invalid queue identifier is one that is currently in use or one that is outside the range supported by the controller '.
|
Object Errors
Description:
An object error, more commonly known as the 'jump bug'(when not in debug mode, a sim resets when encountering an error, thus 'jumping'), occurs usually when there are problems with a behaviour. Some object errors however, are harmless and would go un-noticed if you weren't in debug mode. Debug mode will inform the user that an error has occurred and log a stack trace. These logs are vital to solving bugs in both behaviour mods, and problems with the original game.
Obtaining an error log:
It is common when you have a problem with a behaviour Mod that the creator will request an Object Error log. Basically you will run your game in debug mode(often falsely referred to as boolpropping), this will tell your game to log errors when they occur.
- Run The Sims 2
- Load a lot where you can recreate the problem
- Press the key sequence Control+Shift+C
- Enter the command 'boolprop testingcheatsenabled true'
- Recreate the problem, until you get a popup telling you that an error has occurred.
- A file named something similar to this ObjectError_N001_t23001.txt should appear in your logs folder(My DocumentsEA GamesThe Sims 2Logs')
Object Error Listing:
Here is a complete listing of possible object errors from the stack trace. Below, this list will be explanations of each of them, how they are caused, and fixed.
- Unrecognized error condition
- Stack underflow.
- Check tree primitive blocked completion.
- Transition to node that does not exist.
- Tree not found. Probably a reset() problem.
- Behavior not found. Probably a reset() problem.
- Too many iterations.
- Undefined Transition.
- Stack overflow.
- Bad family id.
- Cinematic camera does not have a choreo queue.
- Another cinematic already is active.
- Unknown cinematic error.
- Target object out of world.
- Attempted too many look_at requests in one simulator turn on this Sim
- Attempting to create object type that's been unlinked (ie is dead, and has had data removed from it's .package file).
- Attempting to Save UI Mode to mode it's already saved at.
- Attempt to change light on object that has no model.
- Last Find Best Action was Not Successful. Quit trying to run gosub.
- Trying to create instance of Template Object
- Trying to animate a cinematic actor that is not animatable
- Cinematic autoCreate actor is not 0
- Cinematic origin actor (for camera and light rig) has no 3D model
- Cinematic origin actor (for camera and light rig) is invalid
- Required cinematic actor has no 3D model
- Required cinematic actor is invalid
- Required cinematic actor is missing
- Cinematic animation not found
- Cinematic scene not found
- Person is not selectable.
- Hit data break point - Value Changed!
- Invalid Lot ID.
- Trying to run default effect - not supported anymore.
- Trying to route while in an post route callback.
- Trying to route while in an along route callback.
- Trying to route while in an pre route callback.
- Couldn't load memory icon
- Animation speed cannot be zero
- Bad or empty button or window GUID.
- Not enough local vars.
- Trying to route while out of world.
- You sent me a crappy GUID, please fix it.
- Could load the specified memory icon.
- Bad destination for a 32bit write.
- Temp0 does not point at a Sim ObjectID.
- Request for babies count out of range.
- Missing neighbor for data access.
- Inventory token propert index out of range.
- Inventory token index out of range.
- Invalid animation type specified in animation string
- Missing Job Title / Phone Services Table (table 147) in Object.
- Missing reach animation.
- Invalid number of loops
- Trying to push nested interaction on someone not in an 'allow nested' interaction
- Trying to access array element via iterator that does not exist.
- Reach animation does not contain event 0.
- No Object for Reach to work on.
- Cant run Reach/Drop on non Sim object.
- The relationship matrix requested could not be found.
- Requesting a look_at operation that is already running on the object
- Trying to modify variable in const type tree
- Locomotion stack is too deep: check for imbalanced push/pops
- Invalid pop: locomotion stack is empty
- 3D object is not locomotable.
- Missing Action String in table.
- Missing (or empty) model bone name.
- Missing table for model bone names.
- Hit Break Point Primitive.
- Trying to perform an animation from the Social Interaction list against a non person.
- Bad paramater value set in Manage Inventory Primitive.
- Index passed to Manage Inventory out of bounds.
- Inventory doesn't exist for ID passed to Manage Inventory.
- Temporary token field out of range.
- Can't place in world for some reason
- No bone on model corresponding to name in routing slot on destination object
- Missing requested bone for slot
- Trying to change an effect on an object with too many Particle Emitters
- Turn rate must be positive
- Trying to change an effect on a non 3d Object
- Missing Effect Name
- Requesting to play an animation on an object for the third time
- Missing Light Name
- Trying to change a light on a non 3d Object
- Trying to look_at a non 3D object
- Trying to use a Global Animation on a non Edith Person object. Naughty naughty!
- Event Tree handler called on deleted object or invalid object ID
- Change graphic expression called on non 3D object
- Animation Primitive called on non Animating object - look at 3DObjectID in obj def.
- Missing Material / Mesh Group Name.
- Material Change on Non 3D object.
- IsGlobal flag not implemented yet.
- Animation name is empty string.
- 3D object is not a person.
- 3D object is not animatable.
- Local out of range.
- Invalid object id.
- Invalid constant.
- Unrecognized priority value.
- Tree table not found
- Search type is invalid. Types are 0: all motive, 1:mental motives, 2:physical motives.
- Balloon Type Is Invalid. Values are 0:thought, 1:scream, 2:speak.
- Object referred to must be a person.
- Slot number out of range.
- Motive number out of range or not an acceptable value.
- Weight number for a weight assignment is out of range.
- Standard number for a weight assignment is out of range.
- Could not find object reference.
- Reference to tree table entry that does not exist. 113
- No stack object present when required. 114
- Data value out of range.
- Expression attempting to write in a read-only area. 116
- Zero distance in finding direction.
- Bad gosub tree number.
- Bad alert tree number.
- Reference to stack object out of range. 120
- Undefined transition found.
- Flag reference is out of range. 122
- Reference to target object when none exists.
- Gosub??
- Reference to tree tree parameter when no parameter exists.
- Illegal owner field in data reference.
- Stack number out of range. 127
- Data number out of range.
- Illegal primitive code. 130
- Random number range evaluated to zero.
- Bad parameter to update primitive.
- Temporary reference out of range.
- Bad operator.
- Bad parameter in look towards primitive.
- Divide by zero. 136
- Invalid routing slot specified
- Invalid snapping mode specified
- Show hide parameter is out of expected range.
- Person data field is out of range.
- Bad target slot specified in routing slot.
- No Error
- Index into object definition out of range.
- Bad room id specified
- Bad room value requested.
- Invalid global sim call.
- Named tree does not exist.
- Bad parameter to call named tree.
- Invalid suit index.
- Invalid suit location.
- Invalid dynamic sprite index
- Object for routing either does not exist or is out of bounds.
- Invalid action in tutorial primitive.
- More than one passing value specified.
- Bad expense type specified.
- Job data not found.
- Career id not found.
- Invalid skin color.
- Neighborhood data index out of range.
- Start object required.
- Tree break encountered.
3. Check tree primitive blocked completion
The cause of this error is attempting to execute code which require 'blocking' to perform (eg. animations, blocking dialog boxes ect) in immediate! mode (bypassing action queue).To avoid this - make sure to push such action's to action queue instead.Common reason for seeing this is a BHAV which issues a dialog but has the 'immediately' box checked in the TTAB. Also seen for Run Tree by Name – when using 'Run in x stack' – try with 'Push in x stack' to avoid error. Also seen for calls to Sleep.
4. Transition to Node That Does Not Exist
This occurs when a true or false branch of a BHAV node is non-existent. To fix this, change the node to refer to an existing node, or create the non-existing one.
7. Too many iterations
This occurs when a node in a BHAV is run more than 10,000 times. It often occurs when a node is linked to itself, or in Set To Next that are too broad(resulting in more than 10,000 items), or if you zero out the variable you using in Set To Next prior to each call (resulting in the same item being found 10,000 times). In this case the error can be fixed by using concise searches, and by making sure that no nodes make loops that will cause them to be run 10,000 times.
At other times this error will occur even if there is no mistake in the coding, but simply because an object is running a long and complex section of code without giving the game time to service other functions. In this case the insertion of an Idle at some point in the code prior to where the error typically occurs will prevent the 'Too many interations' error. The Idle call often only requires '1' tick as its parameter.
Specified Slot Number Was Invalid May
8. Undefined Transition
This occurs when a node's true, or false branch lead it to error (a value of 0xFFFC), rather than another line, or ending the BHAV as true(0xFFFD) or false(0xFFFE). The intentional insertion of error(0xFFFC) tests during code development is a useful means of debugging, but ideally these should be removed from production code in favour of either silent error handling routines or the provision of user friendly error messages.
48. Inventory token propert index out of range
The property of the inventory token you are referring to does not exist
49 Inventory token index out of range
The Inventory token that you refer to does not exist.
56. Bad Object Array
If you see this error, the likelihood is that you have not allocated space for the array you are trying to use. Space must be allocated in the OBJD - Data Space.
63. IK target animation cannot find bone on self
This means that an animation played by the node that caused the error requires a specific cObjectGraphNode name to be defined in the CRES of the My Object.
64. IK target animation cannot find bone on other object
This means that an animation played by the node that caused the error requires a specific cObjectGraphNode name to be defined in the CRES of the Stack Object.
65. IK target animation requires 3D model on other object
This means the stack object is not defined as animateable, or 3D in 0x0063 of its OBJD
66. IK target animation requires other object
This means that the requested animation requires a target object that is not present in the Stack Object
73. Hit Break Point Primitive
This error occurs any time that the primitive 0x000F is called by a BHAV.
99. 3D object is not animatable
Specified Slot Number Was Invalid Will
This means that an animation was requested by this node to be played, but the object is not defined as animatable. This must be set in OBJD - Mesh & Graphics in '3D Object Type' (0x0063).
100. Local out of range
This occurs when a Local Variable is either defined, or called when it has not been allocated by the header of the BHAV.
102. Invalid constant
Specified Slot Number Was Invalid Due
Check that a referred to BCON resource is present.
108. Slot number out of range
This means that there is no entry in the SLOT of the value requested in that node.
109.Motive number out of range or not an acceptable value
The motive that you refer to does not exist.
112. Could not find object reference
Pretty much says it all. An object reference provided is probably not set.
113. Reference to tree table entry that does not exist
When a node refers to a tree table entry that is not defined in the object. This is common(maybe exclusive) with Primitive 0x000D, Push Interaction
114. No stack object present when required
This error occurs when a Primitive called in the node expects a Stack Object to be defined, and either there has been none defined, or it has been assigned to 0.
116. Expression attempting to write in a read-only area
When an expression attempts to change a read-only value, such as 'Time of Day'. Most of the Global From Simulation data types are read-only.
118.Bad gosub tree number
When you have a BHAV in a format for an EP you don't have.
120.Reference to stack object out of range
Stack object data owner has a range of 0x0
122.Flag reference is out of range
The flag you refer to is not defined.
127.Stack Number out of range
Your parameter is out of the range defined in the BHAV's header(arg count).
129. Attribute Number out of range
If you see this error, the likelihood is that you have not allocated space for the number of attributes you are trying to use. Space must be allocated in the OBJD - Data Space. Eight attributes are preallocated by default, but if you need a bigger number than this, you will need to explicity define the quantity you require.
130. Illegal primitive code
Occurs when a non-existent Primitive is attempted to be called; Primitives being defined as an OpCode between 0x0000, and 0x00FF
133. Temporary reference out of range
One possible cause of this error is mistakenly using 'Temp [Temp]' instead of 'Temp'.
136. Divide by zero
Dividing by zero in an expression in SimAntics and will result in an error just like everywhere else.
This article is imported from the old MTS2 wiki. It's original page, with comments, can be found at http://old_wiki.modthesims2.com/Sims 2:Object Errors
Azure Web App Deployment Slots are used to deploy new versions of an application code into production with no interruption to the production traffic. In order to achieve this the swap process involves multiple steps that are performed to prepare the new version of the code to successfully handle the load once it is in production slot. Some of these steps may go wrong, especially when the new version of the code does not cooperate well. This in turn either causes the swap to fail or it results in swapping new code in production while it is still not ready to handle the production load. This post describes the most common reasons why this may happen and how to correct them.
In order to better understand the reasons for the swap failures it is first necessary to explain how the application code in the staging slot is initialized / warmed up prior to the swap to production. Failures during these steps are the most common reasons for the overall failure of the swap operation.
The swap operation is done by an internal process that runs within a scale unit where web app is hosted. Here are the steps that it performs to ensure the application is initialized prior to the swap. Note that the same sequence of actions happens during Auto-Swap and Swap with Preview.
- Apply the production configuration settings to all web app’s instances in the staging slot. This happens when web app has appsettings or connection strings marked as “Slot settings” or if Continuous Deployment is enabled for the site or if Site Authentication is enabled. This will trigger all instances in the staging slot to restart. (For Swap with Preview this the first phase of the swap after which the swap process is paused and you can validate that the application works correctly with production settings)
- Wait for every instance to complete its restart. If some instance failed to restart then the swap process will revert any configuration changes to the app in staging slot and will not proceed further. If that happens the first place to look into is the D:homeLogFileseventlog.xml file of the application specific error log (such as php_errors.log for PHP apps) where you may find more clues what prevents application from starting.
- If Local Cache is enabled then swap process will trigger Local Cache initialization by making an HTTP request to the root directory URL path (“/”) of the web app on every web worker. Local Cache Initialization consists of copying the site’s content files from network share to the local disk of the worker and then re-pointing the web app to use local disk for its content. This causes another restart of the web app. The swap process will wait until the Local Cache is completely initialized and restarted on every instance before proceeding further. A common reason why Local Cache Initialization may fail is when site content size exceeds the local disk quota specified for the Local Cache. If that is the case the the quota can be increased by following instructions from Local Cache Documentation.
- If Application Initialization (AppInit) is enabled then swap process will make another HTTP request to the root URL path on every web worker. The AppInit is a module that runs within the web app request processing pipeline and it gets executed when web app starts. The only thing the swap process does with its first HTTP request to the web app is it triggers the AppInit module to do its work. After that it just waits until AppInit reports that it has completed the warmup. AppInit module uses the list of URL paths specified inside web.config file and makes internal HTTP requests to each of those. All these requests are within the web app process. It does not call any external URL’s and its requests are not going through the scale unit’s front ends. Also, neither the initial HTTP request nor AppInit internal requests follow HTTP redirects. That causes the most common problem that users run into with this module. If web app has such rewrite rules as “Enforce Domain” or “Enforce HTTPs” then none of the warmup requests will actually reach the application code. All the requests will be shortcut by the rewrite rules. In order to prevent that the rewrite rules need to be modified like below:
The {WARMUP_REQUEST} is a server variable that is set by AppInit module for each of its internal requests. That is a reliable way to distinguish whether the request is external or is made by AppInit module. The {REMOTE_ADDR} is a server variable that contains the IP address of HTTP client. The IP address ranges starting with “10.” or “100.” are internal to the scale unit and no outside HTTP client can use them.
- If AppInit is not enabled then swap process just makes an HTTP request to the root path of the webapp on each web worker and as long as it receives some HTTP response it considers the warmup complete. Again the rewrite rules in the web app can cause the site to return HTTP redirect response and the actual application code will not be executed at all. Since the AppInit is not involved here the only way to prevent the rewrite rules is to use the {REMOTE_ADDR} server variable in the rule’s conditions as shown below.
- After all the above steps are completed successfully the actual swap is performed by switching the routing rules on the scale unit’s front ends. More details on what happens during the swap can be found in other blog post “How to warm up Azure Web App during deployment slots swap”
Some other common problems that cause the swap to fail:
- An HTTP request to the root URL path times out. The swap process waits for 90 seconds for the request to return. In case of timeout the request will be retried for up to 5 times. If after that the request still times out then the swap operation will be aborted. If that happens then check the eventlog.xml or application specific error log to see if there are any indications of what causes the timeout.
- An HTTP request to the root URL path is aborted. This may happen if web app has a rewrite rule to abort some requests. If that is the case then the rule can be modified by adding the {REMOTE_ADDR} check as shown in previous examples.
- Web App has IP restriction rules that prevent the swap process from connecting to it. In that case you’ll need to allow the internal IP address range used by the swap process: