Text Manager Errors

This section contains error messages for the Adaptive Server Text Manager.




Error 7101

Severity

17

Message text

Unable to allocate new text value, dbid %d.

Explanation

When you create a table with text or image columns, the data is stored on its own chain of text/image pages. Error 7101 is raised when you attempt to insert data into one or more rows of a text column in a table, but there is not enough space to allocate the new text pages.

Error 7101 is raised with the following states:

State

Meaning

1

Could not allocate the first page to add a new value in a table’s text column.

2

Could not allocate additional pages for an in-progress insert to a text column.

Error 7101 is similar to Error 1105, States 1 and 2, but it is specific to text/image allocation.

Action

  1. Check the available space in the database:

    1> use <database_name>
    2> go
    1> sp_spaceused
    2> go
    

  2. Identify the table by examining the query that raised the error. (You can also run sp_helpsegment on the database segments; rows with indid = 255 refer to the tables with text columns.)

  3. Check the space usage in the table:

    1> sp_spaceused <table_name>, 1
    2> go
    

    To find the space used by text/image columns in this report, look for objects named "t" plus the table name.

  4. Use alter database to increase the storage space for the text data.

Additional information

By default, a chain of text pages is placed on the same device as its table. You can specify a separate device for future space allocations to the text pages by using the sp_placeobject system stored procedure. This is desirable when you expect substantial growth in text storage.

See “Placing Text Pages on a Separate Device” in the System Administration Guide for details.

Versions in which this error is raised

All versions




Error 7105

Severity

22

Message text

TEXT/IMAGE page %d does not have a next page, although it should.

NoteThis error may be caused by a hardware problem.

Explanation

Tables can contain text columns, which are variable-length columns that can hold printable characters, and image columns, which are variable-length columns that can hold binary data. Adaptive Server stores text and image data in a linked list of data pages separate from the rest of the table. On a 2K page size server, each 2K text or image page stores a maximum of 1800 bytes of data.

Error 7105 occurs when Adaptive Server attempts data retrieval or another operation on a table's text or image data, and the operation fails due to an unexpected termination of the page chain. If the operation involved copying data, the problem could be on the source side (the page chain being read) or the destination side (the page chain being written out). The state of the 7105 message raised can help you determine the location of the problem.

Error 7105 is raised with the following states:

State

Meaning

1

There was an unexpected end to the data page chain while sending text data to the client. At the time of the error, a partial character of a multi-byte character set had been sent.

2

There was an unexpected end to the page chain while sending text data to the client. Unlike State 1, the error occurred while positioned at a whole character boundary.

3

There was an unexpected end to the page chain while preparing to read text data.

4

There was an unexpected end to the page chain while traversing the chain to convert character counts to byte counts for a multi-byte character set.

5

A source data page could not be found while copying data from a text or image page to a log record.

6

A source data page could not be found while copying data from the client to a text or image page.

7

A destination data page could not be found while copying data from a text or image constant chain to a text or image data page.

8

A destination data page could not be found while copying data from one text or image page to another.

9

There was an unexpected end to the page chain while sending image data to the client.

16

There was an unexpected end to the page chain while sending text/image data to the client. This is probably a result of doing a dirty read.

17

Similar to State 16.

18

Similar to State 16.

Error 7105 indicates a bad text or image page chain; in some cases (see states 16, 17, and 18 above) it may result from doing dirty reads.

Error 2574 is a related error; it is raised when a dbcc check finds problems with a table's text or image page chain.

Action

States 1 to 9

In these states, the problem is typically due to a small number of bad rows in a table with text or image data, and can be corrected by dropping and re-creating those rows. Use the following steps to correct the problem:

  1. Identify the table. Refer to “How to Find an Object Name from a Page Number” in the Encyclopedia of Tasks chapter for information.

  2. Determine the first page of the text/image chain using dbcc pglinkage, with the starting page being the page number from the error message. For example, assuming dbid=7 and starting page number 531:

    1> dbcc pglinkage(7, 531, 0, 1, 0, 0)
    2> go
    

    Object ID for pages in this chain = 208003772.
    Beginning of chain reached.
    Page : 531
    Page : 532
    Page : 530
    3 pages scanned. Object ID = 208003772.
    Last page in scan = 530.
    

    Page 530 is the first page of the text/image chain.

  3. Identify the row(s) with the bad data using the following command:

    1> select column1 from table_name 
    2> where convert (int, textptr(text_colname)) 
    3> = first_page_of_chain 
    4> go
    

    where column1 is any column or columns in your table which will uniquely identify the rows.

  4. Drop the row(s) in question.

  5. Insert the rows back into the table.

  6. Run dbcc checktable on the table to verify that the problem has been corrected.

States 16 to 18

In these states, Error 7105 is probably due to doing a dirty read, and is unlikely to be related to page corruption. If the problem persists in one of these states on the same page, page corruption may be involved; follow the instructions for States 1 to 9 above to resolve the problem.

Additional information

Have the following information ready when you call Sybase Technical Support:

Versions in which this error is raised

All versions




Error 7114

Severity

22

Message text

Page %ld is not a valid text page.

NoteThis error may be caused by a hardware problem.

Explanation

Error 7114 occurs when Adaptive Server attempts to access or update a table's text or image data, but the retrieved page is found to be a non-text page.

Text page corruption can give rise to 605 errors ("An attempt was made to fetch logical page '%ld' in database '%.*s' from cache '%.*s'. Page belongs to object with id '%ld', not to object '%.*s'.) when you run dbcc's on the affected data.

This error may be due to hardware or operating system errors, or an Adaptive Server problem.

Action

Contact Sybase Technical Support for assistance when this error is raised. Before calling, collect relevant information using the following steps:

  1. Note the page number in the error message. Using the procedure in “How to Find an Object Name from a Page Number” in the Encyclopedia of Tasks chapter, identify the type of page and the table associated with the page.

  2. Check the integrity of the table's text page chains:

    1> dbcc textalloc(tablename)
    2> go
    

Additional information

Have the following information ready when you call Sybase Technical Support:

Versions in which this error is raised

All versions




Error 7130

Severity

16

Message text

WRITETEXT with no log is not valid at this time. Database %s must first be configured for this.

Explanation

This error occurs when you try to execute the writetext command or dbwritetext routine in a database which does not have the sp_dboption option select into/bulkcopy enabled. Because these operations do not log the changes to your data, the option must be enabled.

Often, writetext and dbwritetext run against a temporary table. The select into/bulkcopy option must be enabled in tempdb before these will run successfully.

Action

Enable the sp_dboption option select into/bulkcopy on all databases affected by the writetext just before you perform this nonlogged operation. To do this, the System Administrator or Database Owner can use the following steps:

  1. Enable the option using this procedure:

    1> use master 
    2> go
    

    1> sp_dboption database_name, 
    2> "select into/bulkcopy", true
    3> go
    

    1> use database_name 
    2> go
    

    1> checkpoint 
    2> go
    

  2. If you want to verify that the change is active, use this procedure:

    1> sp_helpdb database_name 
    2> go
    

  3. Execute the nonlogged operation.

  4. When the nonlogged operation is complete, dump the database using normal system administration procedures.

  5. Return the database to its original condition by disabling the select into/bulkcopy option:

    1> use master 
    2> go
    

    1> sp_dboption database_name, 
    2> "select into/bulkcopy", false
    3> go
    

    1> use database_name 
    2> go
    

    1> checkpoint 
    2> go
    

    Repeat step 2 above if you want to verify that the change is active.

Additional information

For more information about writetext and dbwritetext, refer to the Adaptive Server Reference Manual and the Open Client DB-Library Reference Manual.

For more information about database dumps and recoverability, refer to “Developing a Backup and Recovery Plan” in the System Administration Guide.

Versions in which this error is raised

All versions




Error 7134

Severity

16

Message text

The text table and the table referenced by the text pointer disagree.

Explanation

Adaptive Server stores text and image data in text extents separate from the rest of the table. Each extent contains text data for a given table, and may contain multiple text chains corresponding to text contained in different rows and text columns of the table.

The Adaptive Server Text Manager validates text pages during processing. Error 7134 is raised if the Text Manager finds that the object ID of a text page does not match the object ID of the text extent to which the page belongs.

Action

If Error 7134 is raised when you select text columns within a trigger, note that Adaptive Server does not provide the ability to convert text datatypes within a trigger. You must recode the trigger to resolve this problem.

If the error is raised in some other context not involving triggers, the problem is typically due to a small number of bad rows in a table with text or image data; you may be able to correct it by dropping and re-creating those rows. Use the following steps:

  1. Identify the table for which the error was raised. Unless there is a stack trace which provides this information, you will need to know what query caused the error.

  2. Run dbcc checktable on the table.

  3. Correct any errors detected by dbcc checktable using the sections in this manual that refer to those errors.

  4. If the error persists, contact Sybase Technical Support for assistance.

Additional information

When calling Technical Support, have the following information available:

Versions in which this error is raised

All versions