You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jspwiki.apache.org by Harry Metske <ha...@gmail.com> on 2009/04/05 14:19:51 UTC

Re: svn commit: r762074 - in /incubator/jspwiki/trunk: ./ src/java/org/apache/wiki/ src/java/org/apache/wiki/action/ src/java/org/apache/wiki/search/ src/java/org/apache/wiki/util/

coming up (and some minor correction)

2009/4/5 Janne Jalkanen <ja...@ecyrd.com>

>
> Nice, thanks!  Any chance you could port the thread dump code to 2.8.3 as
> well?
>
> /Janne
>
>
> On 5 Apr 2009, at 15:08, metskem@apache.org wrote:
>
>  Author: metskem
>> Date: Sun Apr  5 12:08:52 2009
>> New Revision: 762074
>>
>> URL: http://svn.apache.org/viewvc?rev=762074&view=rev
>> Log:
>>       * 3.0.0-svn-93
>>
>>       * added some code to Watchdog so that the stacktrace is dumped in
>> case of
>>          a timeout, we dump stacktraces of all threads if the debuglevel
>> is
>>          INFO or higher
>>       * got rid of some javadoc errors
>>
>> Modified:
>>   incubator/jspwiki/trunk/ChangeLog
>>   incubator/jspwiki/trunk/src/java/org/apache/wiki/JCRWikiPage.java
>>   incubator/jspwiki/trunk/src/java/org/apache/wiki/WikiEngine.java
>>
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/EditActionBean.java
>>
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/UploadActionBean.java
>>
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/ViewActionBean.java
>>
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/search/SearchMatcher.java
>>   incubator/jspwiki/trunk/src/java/org/apache/wiki/util/WatchDog.java
>>
>> Modified: incubator/jspwiki/trunk/ChangeLog
>> URL:
>> http://svn.apache.org/viewvc/incubator/jspwiki/trunk/ChangeLog?rev=762074&r1=762073&r2=762074&view=diff
>>
>> ==============================================================================
>> --- incubator/jspwiki/trunk/ChangeLog (original)
>> +++ incubator/jspwiki/trunk/ChangeLog Sun Apr  5 12:08:52 2009
>> @@ -1,3 +1,12 @@
>> +2009-04-05  Harry Metske <me...@apache.org>
>> +
>> +        * 3.0.0-svn-93
>> +
>> +        * added some code to Watchdog so that the stacktrace is dumped in
>> case of
>> +           a timeout, we dump stacktraces of all threads if the
>> debuglevel is
>> +           INFO or higher
>> +        * got rid of some javadoc errors
>> +
>> 2009-04-04  Janne Jalkanen <ja...@apache.org>
>>
>>        * 3.0.0-svn-92
>>
>> Modified:
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/JCRWikiPage.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/java/org/apache/wiki/JCRWikiPage.java?rev=762074&r1=762073&r2=762074&view=diff
>>
>> ==============================================================================
>> --- incubator/jspwiki/trunk/src/java/org/apache/wiki/JCRWikiPage.java
>> (original)
>> +++ incubator/jspwiki/trunk/src/java/org/apache/wiki/JCRWikiPage.java Sun
>> Apr  5 12:08:52 2009
>> @@ -26,20 +26,15 @@
>> import javax.jcr.*;
>> import javax.jcr.lock.LockException;
>> import javax.jcr.nodetype.ConstraintViolationException;
>> -import javax.jcr.version.Version;
>> import javax.jcr.version.VersionException;
>>
>> -import org.apache.wiki.api.WikiException;
>> import org.apache.wiki.api.WikiPage;
>> import org.apache.wiki.attachment.Attachment;
>> import org.apache.wiki.auth.acl.Acl;
>> -import org.apache.wiki.auth.acl.AclEntry;
>> -import org.apache.wiki.auth.acl.AclImpl;
>> import org.apache.wiki.content.ContentManager;
>> import org.apache.wiki.content.PageNotFoundException;
>> import org.apache.wiki.content.WikiName;
>> import org.apache.wiki.providers.ProviderException;
>> -import org.apache.wiki.providers.WikiPageProvider;
>>
>>
>> /**
>> @@ -140,8 +135,8 @@
>>    /**
>>     *  Direct access to JCR Properties.
>>     *
>> -     *  @param key
>> -     *  @return
>> +     *  @param key the key for which we want the property
>> +     *  @return Property
>>     *  @throws PathNotFoundException
>>     *  @throws RepositoryException
>>     */
>>
>> Modified: incubator/jspwiki/trunk/src/java/org/apache/wiki/WikiEngine.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/java/org/apache/wiki/WikiEngine.java?rev=762074&r1=762073&r2=762074&view=diff
>>
>> ==============================================================================
>> --- incubator/jspwiki/trunk/src/java/org/apache/wiki/WikiEngine.java
>> (original)
>> +++ incubator/jspwiki/trunk/src/java/org/apache/wiki/WikiEngine.java Sun
>> Apr  5 12:08:52 2009
>> @@ -1096,7 +1096,7 @@
>>     *  <p>If the page is a special page, then returns a direct URL
>>     *  to that page.  Otherwise returns <code>null</code>.
>>     *  This method delegates requests to
>> -     *  {@link
>> org.apache.wiki.action.WikiContextFactory#getSpecialPageResolution(String)}.
>> +     *  {@link
>> org.apache.wiki.action.WikiContextFactory#getSpecialPageURI}.
>>     *  </p>
>>     *  <p>
>>     *  Special pages are defined in jspwiki.properties using the
>> jspwiki.specialPage
>>
>> Modified:
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/EditActionBean.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/java/org/apache/wiki/action/EditActionBean.java?rev=762074&r1=762073&r2=762074&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/EditActionBean.java
>> (original)
>> +++
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/EditActionBean.java
>> Sun Apr  5 12:08:52 2009
>> @@ -431,7 +431,7 @@
>>     * Sets a flag indicating that new page text should be appended to the
>> old
>>     * text.
>>     *
>> -     * @param <code>true</code> if text should be appended;
>> <code>false</code>
>> +     * @param append <code>true</code> if text should be appended;
>> <code>false</code>
>>     *            otherwise (the default).
>>     */
>>    @Validate( required = false )
>> @@ -492,7 +492,7 @@
>>     * {@link HtmlStringToWikiTranslator}. Calling this method causes
>>     * {@link #setText(String)} to be called, with the translated text
>> supplied.
>>     *
>> -     * @param the HTML to translate
>> +     * @param html the HTML to translate
>>     * @throws JDOMException if the HTML cannot be translated
>>     * @throws IOException if the HtmlStringToWikiTranslator cannot
>> translated
>>     *             the text
>>
>> Modified:
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/UploadActionBean.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/java/org/apache/wiki/action/UploadActionBean.java?rev=762074&r1=762073&r2=762074&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/UploadActionBean.java
>> (original)
>> +++
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/UploadActionBean.java
>> Sun Apr  5 12:08:52 2009
>> @@ -100,7 +100,7 @@
>>    /**
>>     * Handler method that uploads a new attachment to the ViewActionBean.
>>     *
>> -     * @return
>> +     * @return Resolution
>>     */
>>    @HandlesEvent( "upload" )
>>    @HandlerPermission( permissionClass = PagePermission.class, target =
>> "${page.qualifiedName}", actions = PagePermission.UPLOAD_ACTION )
>>
>> Modified:
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/ViewActionBean.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/java/org/apache/wiki/action/ViewActionBean.java?rev=762074&r1=762073&r2=762074&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/ViewActionBean.java
>> (original)
>> +++
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/action/ViewActionBean.java
>> Sun Apr  5 12:08:52 2009
>> @@ -112,7 +112,7 @@
>>     * special page names from <code>jspwiki.properties</code>, and
>> possible
>>     * aliases. To determine whether the page is a special page, this
>> method
>>     * calls
>> -     * {@link
>> org.apache.wiki.action.WikiContextFactory#getSpecialPageResolution(String)}.
>> +     * {@link
>> org.apache.wiki.action.WikiContextFactory#getSpecialPageURI(String)}.
>>     *
>>     * @return a {@link net.sourceforge.stripes.action.RedirectResolution}
>> to
>>     *         the special page's real URL, if a special page was
>> specified, or
>>
>> Modified:
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/search/SearchMatcher.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/java/org/apache/wiki/search/SearchMatcher.java?rev=762074&r1=762073&r2=762074&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/search/SearchMatcher.java
>> (original)
>> +++
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/search/SearchMatcher.java
>> Sun Apr  5 12:08:52 2009
>> @@ -167,7 +167,7 @@
>>        /**
>>         *  Create a new SearchResult with a given name and a score.
>>         *
>> -         *  @param name Page Name
>> +         *  @param page Page Name
>>         *  @param score A score from 0+
>>         */
>>        public SearchResultImpl( WikiPage page, int score )
>>
>> Modified:
>> incubator/jspwiki/trunk/src/java/org/apache/wiki/util/WatchDog.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/java/org/apache/wiki/util/WatchDog.java?rev=762074&r1=762073&r2=762074&view=diff
>>
>> ==============================================================================
>> --- incubator/jspwiki/trunk/src/java/org/apache/wiki/util/WatchDog.java
>> (original)
>> +++ incubator/jspwiki/trunk/src/java/org/apache/wiki/util/WatchDog.java
>> Sun Apr  5 12:08:52 2009
>> @@ -304,12 +304,10 @@
>>
>>                if( now > st.getExpiryTime() )
>>                {
>> -                    log.info("Watchable '"+m_watchable.getName()+
>> -                             "' exceeded timeout in state '"+
>> -                             st.getState()+
>> -                             "' by "+
>> -                             (now-st.getExpiryTime())/1000+" seconds");
>> +                    log.info( "Watchable '" + m_watchable.getName() + "'
>> exceeded timeout in state '" + st.getState() + "' by "
>> +                              + (now - st.getExpiryTime()) / 1000 + "
>> seconds" );
>>
>> +                    dumpStackTraceForWatchable();
>>                    m_watchable.timeoutExceeded( st.getState() );
>>                }
>>            }
>> @@ -320,6 +318,28 @@
>>        }
>>    }
>>
>> +    private void dumpStackTraceForWatchable()
>> +    {
>> +        Map<Thread, StackTraceElement[]> stackTraces =
>> Thread.getAllStackTraces();
>> +        Set<Thread> threads = stackTraces.keySet();
>> +        Iterator<Thread> threadIterator = threads.iterator();
>> +        while ( threadIterator.hasNext() )
>> +        {
>> +            Thread t = (Thread) threadIterator.next();
>> +            if( t.getName().equals( m_watchable.getName() ) ||
>> log.isInfoEnabled() )
>> +            {
>> +                log.error( "dumping stacktrace for too long running
>> thread : " + t );
>> +                StackTraceElement[] ste = stackTraces.get( t );
>> +                StringBuilder stacktrace = new StringBuilder( "stacktrace
>> follows" );
>> +                for( int i = 0; i < ste.length; i++ )
>> +                {
>> +                    stacktrace.append( "\n" + ste[i] );
>> +                }
>> +                log.error( stacktrace.toString() );
>> +            }
>> +        }
>> +    }
>> +
>>    /**
>>     *  Strictly for debugging/informative purposes.
>>     *
>>
>>
>