IBM Domino Designer stuck on 'Sync with ODP...' - xpages

I am using GitLab in combination with Sourcetree. Every time I want to commit something, I would go to my Domino Designer and right click the database, click Team Development and use 'Sync with ODP...'.
Most of the time everything works perfectly fine but sometimes the synchronization dialog pops up and just wont go away. In my Sourcetree I can see that some files are waiting to be commited but those files are not all.
So the dialog shows up, wont go away and says "Progress information" "Exporting..." and thats it.
There is no "use in background" button there and the 'cancel' button is disabled.
At this point the only thing I can do is to shut down the Designer using the task manager but the problem still wont go away even after restarting my computer and VirtualBox which I am working on (The designer runs on the VM). The only thing that changes: It sometimes gets stuck "later" in the progress.
I have read the designer hangs often due to automatic synchronization. In my case this feature is disabled.
Is there someone who can tell me what causes this problem and how I can fix it?
- Thank you in advance
(The synchronization is in progress for roughly four hours now, with no change)

Are you able to track it down to a specific design element? If there is a corruption in the DXL, the export to the ODP will probably fail. In Package Explorer you can use the "Open With..." right-click menu option to open as XML. Similarly, using the menu options to export as DXL might also highlight any corruption in DXL. Also, is the NSF local or on a server. If it's on a remote server, that may impact the performance of syncing to an ODP (which will be local).

We are using Domino Designer and Sourcetree in combination with Mercurial and Bitbucket for about a year now.
We suffered a lot of difficulties: "hanging" sync, corrupted custom controls, missing files, lot of stress etc.
What I did find out: most of the syncing problems have something to do with the file IconNote in the resources.
Sometimes the associated source contains another version of this resource, so it creates an IconNote.orig. Whenever this file exists, the syncing will go wrong. I guess that IconNote.orig isn't allowed in Resources and so the syncing stops without any warning(!) and often corrupted files.
It took me a very long time find out, but now I know: If IconNote exist in the Git, I delete it instantly! Syncing goes well aftwerwards.

Related

Domino Designer not syncing properly

In a rather complex project the entire project team is encountering more and more problems regarding designer, like frequent crashes, exceeding of memory limits and- most annoying - problems with outdated project data:
quite often we observe that two different designer clients are showing different versions of project data (see below for a rough description of the environment).
A simple example: an hour ago a co-worker asked me to open and test a new Xpage she had created 15 minutes ago in her Designer. In my Designer client however the new Xpage was not present yet. right-clicking my application and hitting "refresh" brought up the new Xpage.
The problem hits the ceiling with design elements that we both are working on in turns (as in "are you currently working on xpage XXX? I'd like to add..."). So with this syncing delay the problem is obvious: If I foirget to manually sync my project before adding stuff I will overwrite the co-workers' codings.
We never had this problem before, although I have to admit that we never had to work in a team on such a massive project.
Here's the setup:
all designer clients are 9.0.1 FP6
everyone is working on the same project stored on the same server
everyone is working on the same network withion the same building, just door-to-door
Is there something we could do or check to improve this situation?
Lothar, you have stated three problems at once. I'll try dissect them.
Frequent crashes:
We experienced many, many crashes in our daily work after upgrading to Windows 10. I know it sounds silly, but one way it worked for us and successfully mitigated those crashes was installing IBM Designer into C:\IBM\Notes, instead of C:\Program Files\IBM\Notes.
Granting 'Full Access' to 'All Users' over that folder was also necessary.
Exceeding of memory limits: As jtomas correctly pointed out, default memory settings are not enough for heavy xpages development in Domino Designer. I would suggest going to vmarg.Xmx=-Xmx1024m.
Problems with outdated project data: I think there is no workaround for this problem because there is no problem. Domino Designer 9 is a Eclipse based software, and works like so.
Think about it: When working in Java projects, developers download (checkout) source files from a Source Control System (SVN, Git, etc) and work them locally. Whenever a developer modifies or create a file, another developer can see it only if:
a) The modified/new file has been uploaded (commit) to Source Control Repository; and
b) Other developers have synchronized (refresh) their local projects with the repository.
See, that's how Java development works and that's the way we should do it too. Upon opening a NSF file, Domino Designer breaks it down into many files, just like a Java project. Once locally saved into the Java Virtual File System, those files get updates only when you refresh the project. Silly, but it is what it is.
My recipe to a well succeeded Domino development team include:
1) Design locking: All developers must explicitly lock elements they will work on. We don't rely on implicit locks.
2) Communications: All members of the team must be immediately notified whenever a developer has made major updates to the project.
3) Source Control: Despite its pitfalls, we rely heavily on SVN as code repository. It's far from perfect, and merges don't work properly, but it's better than no control.
Hope it helps.
I'm not sure this will fix your syncing issue but I have found modifying the following 3 lines in your local Notes\framework\rcp\deploy\jvm.properties file to help with Designer performance when developing in XPages especially with large projects:
vmarg.Xmx=-Xmx512m
vmarg.Xms=-Xms48m
vmarg.Xmca=-Xmca512k
These are the memory limits I use. You can increase the limits just make sure they are a multiple of 4. You have to restart Notes & Designer for changes to take effect.

Feature deactivation doesn't work. Loads forever without performing deactivation

I'm experiencing problems when trying to deactivate a custom feature through the GUI. When I press the 'deactivate' button I'm, as expected, redirected to the warning page which asks if I'm sure I want to deactivate.
Upon confirming, the page starts loading.
The feature in question should normally be activated very fast, however on this occasion the page loads for more than 5 minutes without anything happening.
After concluding that the page seems to be stuck in an eternal loading cycle, I had to refresh the page to see if there had been any changes, but no, the feature remains active.
Any ideas?
Details:
The site I'm working is a previously existing office365 site. I've just made some changes to my custom solution (modifying one feature and adding another)deactivated the old solution and uploaded the new solution, so I'm trying to deactivate and reactivate the feature which I've modified.
It depends what's happening during deactivation - 5 minutes might not be very long if the deactivation has to perform a lot of updates (e.g. removing columns from lists in lots of subsites). I did once have a feature deactivation that took 45 minutes (?) to run.
I guess another possibility is that you've got C# code that contains an infinite loop? Though that seems a bit of a long shot.
Otherwise, Office 365 is very hard to debug; I'd suggest raising a support call with Microsoft through the O365 portal to see if they can see any logs.
When the feature is removed are you trying to remove items like CT's or anything that is dependant on another thing?
I've seen features get glitchy when this occurs on our test enviroment and make sure this is ironed out before deploying to live.
Theres a feature checker somewhere on codeplex but i'm not sure if this will connect to the office365 site. It's called something like FeatureAdmin.exe This might help you in removing the feature and clearing out left over stuff from the feature however it will not remove whatever your feature is struggling to remove(if it is of course!)
When the original feature was deployed did you test it could be deactivated cleanly?

SharePoint COMException

When adding or editing a page in a SharePoint Pages library we get the following exception:
[COMException (0x81020016): Item does not exist
The page you selected contains an item that does not exist. It may have
been deleted by another user. Click "Home" at the top of the page to return
to your Web site.]
at Microsoft.SharePoint.Library.SPrequestInternalClass.RenderColumn.
The weird thing is, when we first do "Check in" and then click the Publish button it works perfectly. But clicking "Publish" directly generates theis error, BUT NOT ALWAYS!
The Pages library has publishing and item planning on, NO workflow (seeing as the person who adds / edit pages is also the approver) and Major/ Minor versions.
We use a content type derived from publishing page and a custom PageLayout.
I'm sure you would have already checked this but is there any more information in the ULS logs?
Also have you tried setting the debugger to break on all exceptions and does this give you more information? Go to Debug, Exceptions and tick Common Language Runtime Exceptions. Then go to Tools, Options, Debugging and untick Enable Just My Code. Finally attach to w3wp.exe.
If you are running Windows Server 2008 you could also try taking a dump file at the point the debugger breaks above. ADPlus might help if you are running Server 2003 but I don't have experience with it. You should then be able to open the dump file with DumpChk or WinDbg.
Edit: As discussed in the comments, this is code deployed to production that can't have its service interrupted. The only way you could create a dump file is programmatically. Have a look at this question I asked that will hopefully help you if you need to go down this route.
Other things to try if you don't want to get down and dirty with debugging is to try deploying your custom bits to a clean server. See if you can still reproduce the problem or if it changes.
I am assuming that you are using load balancing with 2 web servers.
The fact that it does not happen always points to there being a difference between the servers.
There are then a few things that you could check:
Are all the versions and service packs are the same on both machines
Have any of the servers had beta software installed
Is your code the same on both servers
One thing you could do to test without taking the system down: Is to remove the first web server from the cluster see if the error occurs, then add it back and do the same thing with the second web server.

MS Office 97 ODE setup wizard hangs with message "Path not found"

I have a customer using the Access 97 runtime to support part of their product. Ideally, given the budget to do so, I would have replaced that dinosaur by this point, but that isn't an option today. I am not the system's original author, but am attempting to provide ongoing support.
To distribute this to their customers, they bought the Office 97 Developer Edition Tools, and once every few years they go through its Setup Wizard to package a new distribution.
This time, the Setup Wizard appears to reach a point where it wants to do something with AXDIST.EXE, and instead puts up a dialog box saying only "Path not found". The only reference I've located on the web is a tantalizing glimpse of a page from a domain that no longer exists, where Google has purged the cache retaining only the sentence that appears with the search result. It isn't enough of a hint to help me...
(Edit: Aside from lots of reported issues caused by AXDIST.EXE itself, or installations that are trying to use AXDIST.EXE in some way, that is. Our issue is a problem during the creation of a setup package using the ODE setup wizard. Its own documentation only references AXDIST in one place, and does not contain the text "path not found" at all.)
(Edit 2: Further investigation reveals that AXDIST.EXE itself is not the culprit. Removing that file from the setup wizard's list caused the wizard to stop on the next file in the list. There does not appear to be any significant differences between the description of the file on which it stopped, and the dozen or so files listed above it that were successfully processed. I'm guessing at this point that the resolution is going to be manually recreating the template from scratch, which would be a lot easier if it weren't trapped inside a horrible UI and stored in the form of an Access database containing a bunch of undocumented tables.)
My question is this: What mistake did we make this time with the setup wizard, and how can we fix it?
The issue turned out to be related to a feature of the Access run time that was explicitly listed in the setup wizard, but should have been left for the wizard to infer.
My general advice to anyone also stuck with dealing with the wizard would be to go back to the start and review all the settings carefully and methodically.

Modifying SharePoint System Files

What is the general feeling amongst developers regarding the changing of files in the 12 hive.
For example if you were asked to remove the sign is a different user menu item, you would need to modify the relevent user control on the filesystem. Now if you just go and modify it via notepad or copy over and then if you go and bring a new server into the farm you will need to remember to do the same on the new server.
Obvouisly you could deploy the changed file as a solution and have that done automatically, but I'm just wondering if people are hesitant to make changes to the default installed files?
I have done a bit of SharePoint development, and I must tell you that messing with the 12-hive is a ticket to a world of pain if you ever want to move the app.
I'd rather hack up some javascript to hide it, at least that can be bound to the master page, which is much more portable.
And remember, you never know when the next service pack comes around and nukes your changes :)
I agree with Lars. Sometimes you will not be able to avoid it, depending on your needs. But, in general the best policy is to avoid modification if at all possible.
I know that some of the other menu items in the current user menu (change login, my settings, etc) can be changed by removing permissions from the user. Under Users and Groups there is an option for permissions. I can't remember the exact setting (develop at work, not at home), but there are reasonable descriptions next to each of the 30+ permissions. Remove it and you start hiding menu options. No modifications to the 12-hive needed.
There is a very simple rule: if you want to keep official support from Microsoft, don't change any of the files in the 12 hive that are installed by SharePoint.
I've never encountered a situation where the only solution was to change such a file. For example if you want to change an out-of-the-box user control of SharePoint, you can do so by making use of the DelegateControl, and overriding it in a feature.
More info:
http://msdn.microsoft.com/en-us/library/ms463169.aspx
http://www.devx.com/enterprise/Article/36628
I know it's tempting to quickly change a file, and I have to admit sometimes I just do that on a DEV box, but don't go there on a production server!
Not sure if there is much use pitching in, as everyone else pretty much has it covered, but I would also say don't do it. As tempting as it is, its just impossible to know the full impact of that little change you have made.
From a support perspective you will make it difficult for Microsoft support (patches/hotfixes).
From a maintenance perspective you are also opening yourself up to long term costs.
Go the javascript route.
The way to go about it is to use a Sharepoint Solution (WSP) file.
To change the user control, create a new Sharepoint feature with the new functionality.
Include this feature in your solution.
Deploy the solution either using the stsadm command line, or through Central Site Admin.
This will then get automatically deployed to all the servers in your farm, and it avoids you overwriting anything default sharepoint files.
For more info, check out Sharepoint Nuts and Bolts blog on http://www.sharepointnutsandbolts.com/ which give an introduction to WSP and Sharepoint Features.
I've done this many times and I will speak from experience: Never ever touch the onet.xml files within the 12 hive under any circumstance. Any error that you make in there, and to make the CAML even more complex the file is largely whitespace sensitive, will have an impact on every part of SharePoint.
You should also consider that aside from the substantial risk to the installation, you may well be building in dependencies upon your changes that are then over-written in a future patch or service pack.
Most of the time, you can accomplish everything you want to using features and solution packages without modifying the files. However, there are a few (rather annoying) rare cases where your only option would be to modify a file on the system. I have used it for two particular cases so far. One was to add the PDF iFilter to the docicon.xml file, and the other was to add a theme to the themes.xml file. In both cases, it seemed to be the only way to achieve the goal. Still, we used a solution package to write those files out to all the servers in the farm.

Resources