Database full - now I have problems with the node structure
I'm running an Umbraco v3 site and today the database was filled up (due to the bug where the Umbraco log is filled with hundreds of thousand of log entries).
The client has tried doing things in the administration interface despite the errors that were thrown due to the full database. Now it seems that the node structure in the Umbraco database has become corrupt. The error that I get in the browser window when I try to access one of the pages that the client created during the time that we experienced database problems is:
No node found
(http://www.mydomain.com/default.aspx?umbPage=/Rejected-By-UrlScan&~/en/press-room/news/company-declares-negative-result-for-2009,
'/root/node [@urlName = "rejected-by-urlscan"]')
I can't delete the faulty node in the admin interface. It looks like it's deleted, but when I reload the tree it's there again. I can't make a copy of it since the copy becomes corrupt as well. I have also tried creating a new page and moving the data using copy/paste. This new page becomes corrupt as well.
Since there is no real database structure in Umbraco (no primary keys, no constraints or diagrams) I'm having a hard time figuring out how to locate the faulty pages, which tables are affected and how the data in them are connected. My guess is that when the error occurred Umbraco managed to write data to one table, but not to others that are also required in order to get a working page.
Has anyone experienced this problem and if so, how did you solve it?
Which tables are involved and what should I be looking for?
With this excellent background info I should be able to piece together a method for tracking down and deleting the faulty database entries. I will of course make a back-up of the database first.
This turned out to be a very interesting combination of errors!
Yes, there where inconsistencies in the Umbraco database table due to the fact that the SQL Server grinded to an abrupt halt when the database was full. But after having fixed this, the rejected-by-urlscan error remained. So I went over all the node data in the database a second time without finding any errors.
Then I started testing different combinations of words in the node name and it turned out that the word "declares" triggered the urlscan filter. Why? Because "declare" is a word that can be used for SQL injections and apparently urlscan also reacted to "declares". When I removed that word, the problem disappeared.
So if you are experiencing errors where you get "rejected-by-urlscan" as a part of the error message, start by looking for suspicious words in your node name.
Database full - now I have problems with the node structure
I'm running an Umbraco v3 site and today the database was filled up (due to the bug where the Umbraco log is filled with hundreds of thousand of log entries).
The client has tried doing things in the administration interface despite the errors that were thrown due to the full database. Now it seems that the node structure in the Umbraco database has become corrupt. The error that I get in the browser window when I try to access one of the pages that the client created during the time that we experienced database problems is:
No node found (http://www.mydomain.com/default.aspx?umbPage=/Rejected-By-UrlScan&~/en/press-room/news/company-declares-negative-result-for-2009, '/root/node [@urlName = "rejected-by-urlscan"]')
I can't delete the faulty node in the admin interface. It looks like it's deleted, but when I reload the tree it's there again. I can't make a copy of it since the copy becomes corrupt as well. I have also tried creating a new page and moving the data using copy/paste. This new page becomes corrupt as well.
Since there is no real database structure in Umbraco (no primary keys, no constraints or diagrams) I'm having a hard time figuring out how to locate the faulty pages, which tables are affected and how the data in them are connected. My guess is that when the error occurred Umbraco managed to write data to one table, but not to others that are also required in order to get a working page.
Has anyone experienced this problem and if so, how did you solve it?
Which tables are involved and what should I be looking for?
Thanks in advance!
/Thomas Kahn
I have helped some guys out with this bug: take a look into my blog:
http://blog.thoehler.com/2009/01/08/cleaning-versions-in-the-umbraco-db-for-given-nodes-via-sql
http://blog.thoehler.com/2009/02/27/cleaning-all-unnecessary-versions-via-sql
http://blog.thoehler.com/2008/12/10/understanding-the-umbraco-database
I had some scripts cleaning this...
If the posts doesn't solve your problem contact me
Thomas
Thanks Thomas!
With this excellent background info I should be able to piece together a method for tracking down and deleting the faulty database entries. I will of course make a back-up of the database first.
/Thomas K
This turned out to be a very interesting combination of errors!
Yes, there where inconsistencies in the Umbraco database table due to the fact that the SQL Server grinded to an abrupt halt when the database was full. But after having fixed this, the rejected-by-urlscan error remained. So I went over all the node data in the database a second time without finding any errors.
Then I started testing different combinations of words in the node name and it turned out that the word "declares" triggered the urlscan filter. Why? Because "declare" is a word that can be used for SQL injections and apparently urlscan also reacted to "declares". When I removed that word, the problem disappeared.
More info here: http://weblogs.asp.net/steveschofield/archive/2008/06/24/urlscan-3-0-help-with-sql-injection-attacks.aspx
So if you are experiencing errors where you get "rejected-by-urlscan" as a part of the error message, start by looking for suspicious words in your node name.
is working on a reply...
This forum is in read-only mode while we transition to the new forum.
You can continue this topic on the new forum by tapping the "Continue discussion" link below.