• Welcome to Dizzi's Support Forum.
 

News:

Due to spam, you need to be registered to post now.

Main Menu

Synchronize Library Causes Unhandled Exception AL v1.9.0.0

Started by Marooned, January 26, 2009, 10:06:07 PM

Previous topic - Next topic

Marooned

I get a dialog box that contains the following traceback when I click on the Synchronize Library button in Advanced Library v1.9.0.0.  I ran it in the debugger and it shows that the sddlForm string in System.Security.Principal.SecurityIdentifier..ctor is being passed a value of "WD", which appears to be invalid.  I have .NET 2.0 SP2 installed.  I'm running this on Windows 2000.  Is that no longer a supported O/S?

If I click on the Start Background Indexer button, I just get a dialog box stating that Advanced Library has encountered a problem and needs to close.

Is there any chance I could get the basic format of the index file?  Then I might be able to build a dummy index file so the newer version of AL wouldn't complain about it when started.  Then I might be able to just use an old version of AL (1.0.0.6) to synchronize the library and then use the new version to browse for DAZ Studio content.

Here's the traceback I get when clicking the Synchronize Library button:

************** Exception Text **************
System.ArgumentException: Value was invalid.
Parameter name: sddlForm
   at System.Security.Principal.SecurityIdentifier..ctor(String sddlForm)
   at Advanced_Library.Form1.CreateOrUpdateIndex()
   at Advanced_Library.Form1.synchronizeLibraryToolStripMenuItem_Click(Object sender, EventArgs e)
   at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ToolStrip.WndProc(Message& m)
   at System.Windows.Forms.MenuStrip.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)



Admin


Marooned

Thanks for the fast response!  Version 1.9.1.1 does seem to work better, though not perfectly for me.  When I click on Synchronize Library, it runs for awhile (which is better than before) then it pops up a dialog box with a similar error to the one Indoda reported about the index file already being opened.  However, as far as I can tell, it DID perform the synchronization and I can just click Continue on the dialog box.  If I try to start the Background Indexer though, I still immediately get an error dialog with no details or traceback information about what happened.

Here's a little more info about what's happening when I click the normal Synchronize Library button.  I monitored access to the file in the .../indexer" directory.  When I click on the Synchronize Library button, I see that a CREATE request with Overwrite is made and it succeeds.  Then AL runs for awhile.  Then, there are a series of 7 QUERY/OPEN calls made to the file.  Each QUERY is successful, but each OPEN fails with a SHARING VIOLATION error.  Then the error message dialog is displayed.

I tried moving the config and library files to a different location (using AL's option to do that), but AL still has the same issues.

But this version does work much better for me, so I hope I can use it this way in spite of the issues.  Hopefully they'll get taken care of someday.  Do you happen to need any more Beta testers for your next version?  ;)

BTW, here's the traceback from the error dialog.  It's similar to Indoda's.

************** Exception Text **************
System.IO.IOException: The process cannot access the file 'F:\Temp\Advanced_Library\indexer\AdvancedLibrary.1564' because it is being used by another process.
   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
   at System.IO.FileInfo.Create()
   at Advanced_Library.Form1.CreateOrUpdateIndex()
   at Advanced_Library.Form1.synchronizeLibraryToolStripMenuItem_Click(Object sender, EventArgs e)
   at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ToolStrip.WndProc(Message& m)
   at System.Windows.Forms.MenuStrip.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


Dizzi

Please try this version. I couldn't reproduce the problem, but I changed the interaction with the indexer so a process shouldn't access the files of another process.

Marooned

Thanks for trying to fix the problem even though you can't reproduce it.  Unfortunately, I get the same error with version 1.9.1.2.  The exception traceback is the same.  When I monitored access to the "indexer\AdvancedLibrary.<number>" file, it still followed the same pattern.  One successful CREATE, eventually followed by 7 QUERY/OPEN calls, with each OPEN getting a SHARING VIOLATION error.

I can't figure out why most other people aren't having this problem, but I am.  (sigh)  I wouldn't think there's anything unusual about my O/S even though it's a bit behind the times.  Specifically, I'm running Windows 2000 Professional with Service Pack 4 and all available Microsoft patches.  I'm using Windows 2000 NTFS partitions.  I only have a single core CPU.

Do you have any suggestions on things I could try to help diagnose what's happening?

Dizzi

Please try this version. If it doesn't fix it, then could you check if any other process is accessing the file?

Marooned

I was just starting a post with more info about the problem when you provided version 1.9.1.3.  :D

BTW, there aren't any other programs accessing the file.  FileMon is what I've been using to monitor access to the file.

So I tested out version 1.9.1.3 and I didn't get the error dialog box when selected the Synchronize Library option!  It looks like there's also a nice new feature that reports missing file paths in the library.  That's pretty cool!  I'm going to cross my fingers and hope that the Sync Library issue is fixed.  Thanks!

Unfortunately, I'm also encountering some other problem, seemingly at random.  It may have also occurred in previous versions.  Sometimes it was hard to keep track of things while trying to collect info about the Sync Lib problem.  Anyway, now Advanced Library sometimes pops up an error dialog when I click the Close button.  Most of the time the dialog doesn't provide any information, but once in a while it would report problems with accessing the user.config file.

However, when I set File Monitor to watch for access to the user.config file, then I always got the error dialog that reported errors accessing the user.config file when exiting!  It kind of looks like File Monitor is causing the problem in this case!  I don't think I've ever seen that happen before.  Unfortunately, once I get the error dialog that reports problems with that file, Advanced Library immediately exits every time I try to start it after that occurs.  The only way to fix it is to delete the user.config file.  So it may be that File Monitor was always the cause of the user.config error.  But since I still get the error-on-exit dialog with no additional info occasionally, even when File Monitor isn't running, I guess that's still a valid issue.

I guess I don't know what to do about diagnosing the random error-on-exit issue.  It seems that my attempts to monitor things just made the problem worse.  The dialog box does have a DEBUG button, but when I click it, nothing happens, so I'll have to see if I need to enable something to get the debugger to come up.  If I can gather any additional info, I'll let you know.

Thanks for pursuing the Synchronize Library issue!  That problem seems to be fixed as far as I can tell.  I hope it doesn't introduce any issues for your other users.

Dizzi

I'm glad that that fixed it.

I didn't encounter any problems when closing AL yet, but I know that filemon can cause problems - not only with AL. I'm going to check the config save code, but there's not much to do wrong :-)