How to find list definition data in SQL

We use SharePoint 2007 on a small farm. In one department of our company there is a website with a customizable task list. There are 3 types of content on this list that are successively inherited from Task.

Task: Purchase: Renewable Purchase: Contract

We just used ready-made tools and an interface to create this list and its content types and site columns. We did not change the main type of the contents of the task.

The client made me log in and change the names of some columns and create some new ones. I also did this with the normal list settings interface.

Now, when they try to edit certain elements, get the following error:

"Exception from HRESULT: 0x80040E14"

I looked at the error message and found that it indicates that the SQL transaction log for this content database is full. This is not the case. Further research showed that they also received the same error after similar changes in their lists. This error seems to be erroneous.

My feeling based on these similar reports is that SharePoint got confused and assigned double values ​​for the colName property of one or more fields in the list definition data. However, for almost every report I read, they use the content types manually, which they manually added as functions - this gives them a Schema.xml file for editing, which, it seems to me, does not have. Nobody seems to encounter this problem using just the normal interface.

So, I would like to check for duplicate values ​​in the list definition data, but I don't know how to query it. Where does this data live in db content? If I found it, would it be acceptable to change it?

Mistakes

After receiving the ULSViewer, I performed the operation of editing the test item in the list. There was one error:

Query execution failed unexpectedly, error code 137. Additional error information from SQL Server is provided below. Msgstr "Must declare a scalar variable" @@ LevelSELECT "." Request text (if any): "BEGIN TRAN; DECLARE @@ iRet INT, @DN nvarchar (256), @LN nvarchar (128), @@ S uniqueidentifier, @@ Level tinyint, @@ DocUIVersion int, @ExtraItemSize bigint; SET @@ iRet = 0; SET @@ S = '5E0E6D27-0D10-428F-B6E4-5CC7F2921369'; SET @@ Level = 1; SET @@ DocUIVersion = 512; SELECT @ExtraItemSize = 0 EXEC @@ iRet = proc_UpdateListItem @ SiteId = '5E0E6D27-0D10-428F-B6E4-5CC7F2921369', @WebId = 'AAE6409B-325A-48D2-8C92-FA73858AA20B', @ListID = '38EC3BA0-F83B-4A5E-A654-AC541D109tem @ 1397 RowOrdinal = 0, @ReturnRowset = 1, @ItemDirName = @DN OUTPUT, @ItemLeafName = @LN OUTPUT, @UserId = 3, @TimeNow = '20110215 15:39:04', @MajorVersionsLimit = 0, @MajorMinorVersions = Limit = 0 @NewUIVersion = @@ DocUIVersion OUTPUT, @Level = @@ Level OUTPUT, @IsDocLib = 0, @tp_Version = 1, @tp_ContentTypeId = ?, @ Nvarchar1 = ?, @ Nvarchar3 = ?, @ Nvarchar4 = ?, @ Int1 , @ ntext2 = ?, @ datetime1 = ?, @ datetime2 = ?, @ int3 = ?, @ nvarchar5 = ?, @ ntext9 = ?, @ ntext3 = ?, @ ntext4 = ?, @tp_ContentType = ?, @ datetime3 = ?, @ int5 = ?, @fl oat3 = ?, @ ntext10 = ?, @ ntext5 = ?, @ nvarchar21 = ?, @ datetime4 = ?, @ nvarchar10 = ?, @ nvarchar20 = ?, @ nvarchar22 = ?, @ nvarchar23 = ?, @ nvarchar19 = ?, @ nvarchar24 = ?, @tp_Modified = ?, @tp_ModerationStatus = ?, @tp_ItemOrder = 131000.000000000, @Size = 182, @ExtraItemSize =E CreateItemVersion = 1, @ItemName = N'TEST001 ', @Events data = 72656D656E742F4C697374732F50757263686173657300, @ = 0xF3FE0000010000000000000006000000050000006FFFF00FF00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 IF @@ iRet <> 0 BEGIN ROLLBACK TRAN; GOTO DONE; END EXEC @@ iRet = proc_UpdateItemJunctionsCurrentVersion @SiteId = '5E0E6D27-0D10-428F-B6E4-5CC7F2921369', @DirName = @DN, @LeafName = @LN, @NewUIVersion = @@ DocUers = =@@ Docuels = 0 EXEC @@ iRet = proc_UpdateListItem @SiteId = '5E0E6D27-0D10-428F-B6E4-5CC7F2921369', @WebId = 'AAE6409B-325A-48D2-8C92-FA73858AA20B', @ListID0-FIBA4694A5203A4B4AECBIECI-FBIEC4A5203A4BECA ', @ItemID = 1310, @RowOrdinal = 1, @ReturnRowset = 1, @UserId = 3, @TimeNow =' 20110215 15:39:04 ', @MajorVersionsLimit = 0, @MajorMinorVersionsLimit = 0, @NewUIVersion = @@ DocUIVers OUTPUT, @Level = @@ level OUTPUT, @IsDocLib = 0, @tp_Version = 1, @Size = 0, @ExtraItemSize = @ExtraItemSize, @ItemName = N'TEST001 ', @ eventData = 0x0100000001000105436F6E74656E7454797065496400436F6E74656E74205479706520494400307830313038303038423645363044313631373933323442413343423742394335433245303233433030363035323135423845454638373034394143464544333138443846303746374600010000045469746C65 005445535430303100010000045072696F7269747900283229204E, @ = 0xF3FE0000010000000000000006000000050000006110030CB000000030000000EF12433CB001000033000000FFFFFFFFFFFF7FF8FF IF @@ iRet <> 0 BEGIN ROLLBACK TRAN; GOTO DONE; END EXEC proc_ClearLinks @@ S, @DN, @LN, @@ Level, '18E5EBF4-97FA-4B92-AA3E-37CC601A4DBB'; EXEC proc_ClearLinks @@ S, @DN, @LN, @@ Level, '8B12A69E-C342-473B-89F7-A39913F5382F'; EXEC proc_ClearLinks @@ S, @DN, @LN, @@ Level, '6F7FF8F6-AC72-493B-AF89-CBE031816F97'; EXEC proc_ClearLinks @@ S, @DN, @LN, @@ Level, '45AFEE8A-879E-4DAA-BC9F-FFA192A348B0'; EXEC proc_ClearLinks @@ S, @DN, @LN, @@ Level, 'D399FC56-0966-40B5-BDF9-6B7D47E3391D'; COMMIT TRAN; DONE: RETURN; "

Error before this: "An unknown SPRequest error has occurred. Additional information: 0x80040e14"

Resolution

This turned out to be not a clash of names, but the issue of version control is included in large lists. My change in the list seems to have just triggered it. There is a fix for this (support.microsoft.com/kb/948945) that we applied last night. Everything seems to be in order. Thank you all for your understanding.

+4
source share
2 answers

Exceptions from duplicate fields look different than the HRESULT error you get.

Are you sure transaction logs are not full? Have you trimmed the content database log files? Have you checked the disk size on the hard drive where your db content is located? Are all other databases ok? Most of the sources I looked at suggest that these are: full disks.

In addition, Microsoft claims that the cause of this may be the wrong service pack / update - did you accidentally install the SP or patch? "0x80040E14" or "HTTP 500" error message when connecting to a Windows SharePoint Services website after installing a service pack for Windows SharePoint Services or a security update

For further research: did you check the ULS logs (use the ULS Viewer for this)? Usually there is a lot of useful information that you do not see through the user interface.

Do not try to change anything in the content database - this is a big no-no in the world of Sharepoint.

+1
source

SharePoint Manager provides XML schemas for each column, content types, and lists. You can also get the spField.SchemaXml property if you use code in the object model.

Thanks for adding the error. It seems that it was the same error that I encountered several years ago with manual editing and restoring a database backup. Unfortunately, so many years ago I do not remember the details.

However, I think that you should continue to check database column names for key fields.

From what I remember, it seems that SharePoint uses two different pieces of code to create some of the SQL statements on the fly, and when our manually modifiable fields got confused, the SQL code to create the first part no longer matches the second part. I pulled out the request and tried to run it, but I am sure that this did not provide any useful information.

Unfortunately, I am sure that we were still in dev when this error occurred and decided to rebuild rather than fix the problem.

Sorry, I can’t add anything useful.

+1
source

Source: https://habr.com/ru/post/1339718/


All Articles