Oracle Database Errors or Warnings from Error ORA-24791 to ORA-24803

ORA-24791: invalid transaction start flags
Cause: An invalid transaction start flag was passed.
Action: Verify that OCI_TRANS_LOOSE was not passed along with OCI_TRANS_JOIN, OCI_TRANS_RESUME. Also, verify that other flags (such as OCI_TRANS_SEPARABLE) passed by the client are supported by the version of the Oracle server.
ORA-24792: cannot mix services in a single global transaction
Cause: Oracle RM will not serve global (distributed) transaction requests if branches are created using different services
Action: Configure clients such that those participating in the same distributed transaction use the same service name.
ORA-24794: no active DTP service found
Cause: Oracle RM will not serve global (distributed) transaction requests until DTP services are configured in RAC. It is possible that a service was stopped while transactions were in-flight.
Action: Provision/Start DTP services first.

ORA-24795: Illegal string attempt made
Cause: An illegal attempt was made to commit/rollback current transaction
Action: Use appropriate commit/rollback mechanism
ORA-24796: operation completed; resume of original transaction rolled back
Cause: The commit, rollback, or prepare completed successfully, but the current transaction for this thread was rolled back.
Action: If desired, retry the current transaction. If the operation was prepare, then end transaction appropriately with a commit or rollback operation.
ORA-24797: cannot promote the current transaction to a distributed transaction
Cause: An illegal attempt was made to promote the current transaction.
Action: Verify that OCI_ATTR_XID, OCI_ATTR_INTERNAL_NAME, and OCI_ATTR_EXTERNAL_NAME attributes have been set properly, and verify that the current transaction has neither performed IDL or PDML operations, nor already been a distributed transaction. Also, verify that the local transaction is in the same isolation level if the isolation flag value is set.

ORA-24798: cannot resume the distributed transaction branch on another instance
Cause: An attempt was made to resume a distributed transaction branch that is physically located on another RAC instance.
Action: Get a connection to the instance where the transaction branch is located.
ORA-24801: illegal parameter value in OCI lob function
Cause: One of the parameter values in the OCI lob function is illegal.
Action: Check every parameter in the OCI Lob function call to make sure they are correct. Offsets should be greater than or equal to one.
ORA-24802: user defined lob read callback error
Cause: The only valid return value for a user defined lob read callback function is OCI_CONTINUE. Any other value will cause this error.
Action: Verify that OCI_CONTINUE is returned from the user defined lob read callback function.
ORA-24803: illegal parameter value in lob read function
Cause: Internal error .
Action: This error should not normally occur. If it persists, please contact your customer service representative.

Above are list of Oracle Database Errors or Warnings from Error ORA-24791 to ORA-24803 received while performing certain operation against Oracle Database or related products.

What are Oracle Database Error Messages?

Oracle Error Messages may be returned while using products which are part of Oracle Database. Each Oracle Database Error or Warning Message mentioned above contains the Warning or Error Message Statement, a short explanation of the probable causes of the Error message, and a recommended action.

When it comes to troubleshooting, the more you know the better troubleshooter you are (in my option). Sometimes knowing more actually gets in the way. We repeatedly get calls where customers couldn’t connect to AlwaysOn Listener on Azure because of the misconfiguration of the subnet mask for the listener IP. They receive this error “A...

We just released SQL Nexus 5.5.0.1 on codeplex. In addition to numerous ‘rules’ that catch issues that can potentially impact your SQL Server performance, we added quite a few reports. Some of the reports are displayed below. The following three were born out of troubleshooting experience. “Top 20 Active CPU Intensive Queries”: When troubleshooting CPU...

A user called in for help because he wasn’t able to drop a user from a database. The error message is below Msg 15136, Level 16, State 1, Line 2The database principal is set as the execution context of one or more procedures, functions, or event notifications and cannot be dropped. From the error, the...

There are multiple levels of throttling with Azure. You can get throttled at disk level, storage account level or VM/host level. These types of throttling can manifest into something that may not be that obvious. Recently we received a call from customer who was backing up databases from Azure VM to Azure blob storage. The...

Lately, we had a customer who contacted us for a performance issue where their server performed much worse in SQL Server 2016 following upgrade. To show us as an example, he even captured a video. In the video, he showed that the session that was compiling the query had multiple threads waiting on LATCH_EX of...

With so many users new to Azure, Sometimes an issue appears more complex than it really is. If you back up your databases to Azure blob storage but your company uses proxy servers for internet access, you will need to configure backuptoURL.exe.config per SQL Server Backup to URL Best Practices and Troubleshooting. We...

If you created an SQL Server VM via azure portal, there will be a section called “SQL Server Configuration” which was introduced via blog “Introducing a simplified configuration experience for SQL Server in Azure Virtual Machines”. Here is a screenshot of that setting. It allows you to configure various things like auto backup, patching or...

If you need to open up your SQL Server on an Azure VM to public internet access, you need to look no further than this document Connect to a SQL Server Virtual Machine on Azure (Resource Manager). It has very detailed step-by-step instructions. On a very high level, here are steps In your VM, create...

Recently we got a customer who called in and wanted to know why he received NULL for query_plan when querying sys.dm_exec_query_plan. This customer referenced a blog from https://dzone.com/articles/dmexecqueryplan-returning-null. In that scenario, you will get NULL for query_plan if there are any statements involving temp tables that have not been executed for the first time. For...