Oracle 06413: Connection Not Open (x64)

Having changed to a 64-bit development machine at work recently I ran into an Oracle error while trying to generate files using CodeSmith. This error was ORA-06413: Connection Not Open. Assuming it was a connection string error, as I had not run this particular generation in some time and it was likely that the server or username/password had changed, I proceeded to test the connection from SQL Developer. Success!

After ruling out that the connection was indeed valid I did a quick Google search for the error message. After a few clicks I discovered a very well known (has been around for a few years) Oracle issue; When executing an Oracle command from an application with parentheses or equals — ‘(‘ or ’)’ or ‘=’ — in the path than the specified error message is thrown.

In this particular case, CodeSmith had been installed under C:/Program Files (x86)/CodeSmith which was causing Oracle to fail. The quickest workaround was to simply move CodeSmith from the Program Files (x86) path e.g. into C:/CodeSmith. However; there is a patch (5383042) for Oracle 10g, which is also applied to Oracle 11G.

See Code, See CodeRun

Merbla wrote a short post today about a site he came across, CodeRun. The site is an online code repository, with the added advantage of an online IDE include on the site which allows you to see the code and run/debug it as it is. After signing up for a free account you can create your own projects (AJAX, ASP.NET, PHP and WPF — AJAX and ASP.NET also have support for Facebook applications) which you can develop, store and run all from their website.

The concept is brilliant — everything from start to go can be done online via your standard web browser (currently only supports Internet Explorer and FireFox) and publishing of your source code is as simple as a right-click and a left-click. Once the source has been published other people can freely go and search for source code in the repository and open it directly in the browser, make modifications and run them all from within the browser.

However; The actual implementation of it so far (while still very impressive) is significantly lacking from a development perspective. Although it is possible to do the majority of thing you can do in Visual Studio, it is a little cumbersome and slow at times and does have a few limitations. For example, there is no toolbar — and therefore no drag and dropping of controls (which Microsoft presentations always seem to contain a lot of ;-).

Although the site seems to be focused on web applications some features are also available in the online IDE. You do not have the ability to create folders with underscores in them, and there does not seem to be any way of creating the special ASP.NET folders such as App_Data or App_Themes… not such a big deal. Designer files are not automatically created and if you try to create one an exception is thrown saying the file already exists.

The biggest problem, however, is the speed. Perhaps it is just my machine or my internet connection, but the online IDE is very slow to use and navigate. Menus and prompts tend to hang the browser for a couple of seconds before they load and the IntelliSense (ctrl+space) does not allow function correctly. Code highlighting, although not important or required, is lacking from the Visual Studio equivalent and take a significant amount of time to process and display.

Copying and pasting from Visual Studio into the online IDE also seems to be out of the question, as it seems to paste the text multiple times; Copy and paste from within the online IDE works fine.

All that being said the online IDE quite features rich and imitates Visual Studio very well. You are able to apply breakpoints and step through code, attach to processes (only online applications — not system processes), watch variables, etc. There is also an option to open a project from a zip file — which works great, providing you zip the project from the root of the project folder (it must not be in a sub folder).

In the end (as Merbla suggested in his post) something like this teamed up with StackOverflow, for the purpose of displaying simple solutions to problems with working example would be brilliant! However, as far as online development goes I think there is a long way to go.

See running example: Hello World!