Uploaded image for project: 'Chemistry (Retired)'
  1. Chemistry (Retired)
  2. CMIS-559

Timeout when fetching documents

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Not A Problem
    • DotCMIS 0.4
    • None
    • dotcmis
    • None
    • Windows, Visual Studio 2010 C# client application

    Description

      DotCMIS.Exceptions.CmisRuntimeException with "Timeout" is raised when an attempt is made to fetch a third document within several minutes. All subsequent operations then also time out, until several minutes have passed.

      This can be easily reproduced by initialising a session:

      private ISession session;
      private SessionFactory factory;
      private Dictionary<string, string> parameters = new Dictionary<string, string>();
      parameters[SessionParameter.BindingType] = BindingType.AtomPub;
      parameters[SessionParameter.AtomPubUrl] = dms_cmis_url;
      parameters[SessionParameter.User] = dms_cmis_user;
      parameters[SessionParameter.Password] = dms_cmis_password;
      factory = SessionFactory.NewInstance();
      session = factory.GetRepositories(parameters)[0].CreateSession();
      

      and then performing this code three times:

      IObjectId id = session.CreateObjectId("0923dba58001468a");
      ob = session.GetObject(id) as IDocument;
      str = ob.GetContentStream();
      

      The first two calls complete quickly. The third call raises an exception after thirty seconds:

      DotCMIS.Exceptions.CmisRuntimeException {"Timeout"}
      
         at DotCMIS.Binding.AtomPub.ObjectService.GetContentStream(String repositoryId, String objectId, String streamId, Nullable`1 offset, Nullable`1 length, IExtensionsData extension)
         at DotCMIS.Client.Impl.Document.GetContentStream(String streamId)
         at DotCMIS.Client.Impl.Document.GetContentStream()
         at CMISClient.MainWindow.MenuItem_Click_4(Object sender, RoutedEventArgs e) in C:\src\CMISClient\MainWindow.xaml.cs:line 156
         at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
         at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
         at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
         at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
         at System.Windows.Controls.MenuItem.InvokeClickAfterRender(Object arg)
         at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
         at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
         at System.Windows.Threading.DispatcherOperation.InvokeImpl()
         at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
         at System.Threading.ExecutionContext.runTryCode(Object userData)
         at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
         at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
         at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
         at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
         at System.Windows.Threading.DispatcherOperation.Invoke()
         at System.Windows.Threading.Dispatcher.ProcessQueue()
         at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
         at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
         at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
         at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
         at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
         at System.Windows.Threading.Dispatcher.InvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
         at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
         at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
         at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
         at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
         at System.Windows.Application.RunDispatcher(Object ignore)
         at System.Windows.Application.RunInternal(Window window)
         at System.Windows.Application.Run(Window window)
         at System.Windows.Application.Run()
         at CMISClient.App.Main() in C:\src\CMISClient\obj\x86\Debug\App.g.cs:line 0
         at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
         at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
         at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
         at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
         at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
         at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
         at System.Threading.ThreadHelper.ThreadStart()
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            katie Katie
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: