== Why and when non-existing pages may occur in SMW query results ==

In principle, it is possible that SMW queries show pages that do not 
have text (that is "don't exist"). The reason is that SMW needs to 
consider non-existing pages as well, for instance if some property of 
Type:Page is assigned a value of a page that does not exist, then the 
assignment still must be stored. This is one reason why SMW creates 
internal IDs for non-existing pages as well.

Normally, these pages should not appear in any query, since they do not 
satisfy normal query conditions. They have no properties (not even a 
Modification date) and they have no categories either. The only way in 
which they can be selected is by issuing namespace queries: they have a 
namespace based on their page title. The easiest current workaround to 
protect namespace queries against such results is to add the condition 
[[Modification date::+]] which is true exactly for those pages that exist.

If non-existing pages still appear in a query that has conditions beyond 
namespace filters, then there is an inconsistency in the database that 
should be fixed by repairing the data (using the web interface, and 
possibly runJobs.php for speeding things up).

Completely purging all non-existing pages from SMW's tables is currently 
only possible by deleting and rebuilding the tables as described on the 
"repairing SMW" documentation page (this requires a command line 
script). Since SMW needs internal page IDs for numerous purposes, it is 
not easy to see if a page is really no longer needed anywhere, and this 
is why SMW does not purge obsolete page ID records during its normal 
operation.

I remark that this behaviour is specific to the SMWSQLStore2 storage 
backend. It is an implementation issue of this particular DB 
organisation which uses internal IDs for more efficient querying.

Cheers,

Markus


On 01/10/2010 01:54, Kevin Jones wrote:
> Don,
>
> I just ran into the same issue literally a couple hours ago. You have to
> go to Special:SMWAdmin and click "Start Updating Data". This will add
> all the pages in the wiki to the job queue so that they can be
> reanalyzed. If you want this change to take effect immediately, I
> recommend running runJobs.php from the maintenance directory.
>
> Hope this helps!
>
> Kevin J.
>
> On Thu, Sep 30, 2010 at 5:25 PM, don undeen <[email protected]
> <mailto:[email protected]>> wrote:
>
>     Hi all,
>     I'm running a wiki with quite a lot of pages (individual art objects),
>     and I recently ran some batch processes to delete a bunch of these
>     objects,
>     using the deleteBatch.php script.
>
>     This worked, in that the pages are now deleted.
>     However, I have some queries on pages that are still showing those
>     pages, albeit with red links.
>
>     In other words, the wiki "knows" the pages don't exist, but is
>     showing the pages in search results anyways.
>
>     I've tried running maintenance/refreshLinks.php, as well as
>     extensions/SemanticMediaWiki/maintenance/SMW_refreshData.php
>
>     yet still those pages show up. The data for those pages is still in
>     the SMW tables, but not the the page table.
>
>     Is there some other way to "Purge" those deleted files? I've heard
>     about the purgeOnDelete extension, which I may try out, but these
>     pages are already deleted.
>
>     any ideas?
>
>     Thanks!
>
>     
> ------------------------------------------------------------------------------
>     Start uncovering the many advantages of virtual appliances
>     and start using them to simplify application deployment and
>     accelerate your shift to cloud computing.
>     http://p.sf.net/sfu/novell-sfdev2dev
>     _______________________________________________
>     Semediawiki-devel mailing list
>     [email protected]
>     <mailto:[email protected]>
>     https://lists.sourceforge.net/lists/listinfo/semediawiki-devel
>
>
>
>
> ------------------------------------------------------------------------------
> Start uncovering the many advantages of virtual appliances
> and start using them to simplify application deployment and
> accelerate your shift to cloud computing.
> http://p.sf.net/sfu/novell-sfdev2dev
>
>
>
> _______________________________________________
> Semediawiki-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/semediawiki-devel


------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
Spend less time writing and  rewriting code and more time creating great
experiences on the web. Be a part of the beta today.
http://p.sf.net/sfu/beautyoftheweb
_______________________________________________
Semediawiki-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/semediawiki-devel

Reply via email to