Re: [Mono-dev] Registry

2015-10-08 Thread Miguel de Icaza
Hello,

We tried to make those work, and could not.   That is why Mono's SHM
support is getting deprecated, it works most of the time, when things go
right.   The problem is that things can go wrong, and they go wrong.

There are a universe of problems, ranging from the home directory being on
non native file systems that do not make guarantees, to service leaks, to
stale data, to stale locks and so on.

Miguel.

On Thu, Oct 8, 2015 at 10:39 AM, Neale Ferguson 
wrote:

> While this wouldn’t protect against “rogue” apps who want to trash things,
> would using the existing mechanism but using the Linux locking primitives
> (which are co-operative and not proscriptive)  to serialize access to the
> underlying files/directories be an option?
>
>
> One option would be to write a backend that uses one of the various
> configuration systems in Unix that use a separate process to arbitrate
> access to the information.
>
> Perhaps you can use dconf.
>
> Since the registry lives in mscorlib, and this would bring a number of
> dependencies , I recommend to make this a loadable plugin.
>
___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Registry

2015-10-08 Thread Neale Ferguson
While this wouldn’t protect against “rogue” apps who want to trash things, 
would using the existing mechanism but using the Linux locking primitives 
(which are co-operative and not proscriptive)  to serialize access to the 
underlying files/directories be an option?


One option would be to write a backend that uses one of the various 
configuration systems in Unix that use a separate process to arbitrate access 
to the information.

Perhaps you can use dconf.

Since the registry lives in mscorlib, and this would bring a number of 
dependencies , I recommend to make this a loadable plugin.
___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Registry

2015-10-08 Thread Neale Ferguson
Client wants to move from Windows to mono on Linux.


Hi there,


Are you trying to run "on mono" or do you mean on mono linux or mac?
___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Registry

2015-10-08 Thread Miguel de Icaza
One option would be to write a backend that uses one of the various
configuration systems in Unix that use a separate process to arbitrate
access to the information.

Perhaps you can use dconf.

Since the registry lives in mscorlib, and this would bring a number of
dependencies , I recommend to make this a loadable plugin.

On Tue, Oct 6, 2015 at 5:47 PM, Neale Ferguson  wrote:

> We have a client who is testing the waters with porting some .NET based
> applications to mono. However, a couple of these critical applications
> rely on the windows registry. The implementation of registry-support in
> mono is quite crude and not process-safe and this is holding them back. I
> am looking for ideas as to improving this so that apps can share the
> registry safely and efficiently.
>
> ___
> Mono-devel-list mailing list
> Mono-devel-list@lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Registry

2015-10-08 Thread Robert Jordan

On 08.10.2015 10:44, psant...@codicesoftware.com wrote:

Hi there,


Are you trying to run "on mono" or do you mean on mono + linux or mac?


Mono's registry implementation is using native Windows APIs
under Windows, so the concurrency issues Neale was speaking
about do not apply here.

Robert



pablo



On 10/6/2015 23:47, Neale Ferguson wrote:

We have a client who is testing the waters with porting some .NET based
applications to mono. However, a couple of these critical applications
rely on the windows registry. The implementation of registry-support in
mono is quite crude and not process-safe and this is holding them back. I
am looking for ideas as to improving this so that apps can share the
registry safely and efficiently.

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list
.





___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list




___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Registry

2015-10-08 Thread psant...@codicesoftware.com

  
  
Hi there,
  
  
  Are you trying to run "on mono" or do you mean on mono + linux or
  mac?
  
  pablo
  
  

On 10/6/2015 23:47, Neale Ferguson
  wrote:


  We have a client who is testing the waters with porting some .NET based
applications to mono. However, a couple of these critical applications
rely on the windows registry. The implementation of registry-support in
mono is quite crude and not process-safe and this is holding them back. I
am looking for ideas as to improving this so that apps can share the
registry safely and efficiently.

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list
.




  

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


[Mono-dev] Registry

2015-10-06 Thread Neale Ferguson
We have a client who is testing the waters with porting some .NET based
applications to mono. However, a couple of these critical applications
rely on the windows registry. The implementation of registry-support in
mono is quite crude and not process-safe and this is holding them back. I
am looking for ideas as to improving this so that apps can share the
registry safely and efficiently.

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Registry question

2015-08-27 Thread Miguel de Icaza
It is not multi-process safe, you would need to ensure that through an
external mean.

On Thu, Aug 27, 2015 at 12:42 PM, Neale Ferguson 
wrote:

> Is registry multi-process safe? How are registry transactions maintained
> by Mono? Also, I assume the EventLog is just syslog on Linux.
>
>
> Neale
>
> ___
> Mono-devel-list mailing list
> Mono-devel-list@lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


[Mono-dev] Registry question

2015-08-27 Thread Neale Ferguson
Is registry multi-process safe? How are registry transactions maintained
by Mono? Also, I assume the EventLog is just syslog on Linux.


Neale

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


[Mono-dev] Registry Bug still around?

2006-05-27 Thread Cory Foy

Hi All,

I've got the latest version of Mono, and it looks like the Registry bug 
is still around on Linux. I've created a test case which is attached to 
this email. Here's what I get while running it:


[EMAIL PROTECTED] ~/workspace/monobugs $ mono -V
Mono JIT compiler version 1.1.15, (C) 2002-2005 Novell, Inc and 
Contributors. www.mono-project.com

TLS:   normal
GC:Included Boehm (with typed GC)
SIGSEGV:   normal
Disabled:  none
[EMAIL PROTECTED] ~/workspace/monobugs $ mono regtest.exe
Setting Values
Clearing Names

Unhandled Exception: System.InvalidCastException: Cannot cast from 
source type to destination type.
in <0x0008a> Microsoft.Win32.UnixRegistryApi:DeleteValue 
(Microsoft.Win32.RegistryKey rkey, System.String value, Boolean 
throw_if_missing)
in <0x00035> Microsoft.Win32.RegistryKey:DeleteValue (System.String 
value, Boolean shouldThrowWhenKeyMissing)

in <0xf> Microsoft.Win32.RegistryKey:DeleteValue (System.String value)
in (wrapper remoting-invoke-with-check) 
Microsoft.Win32.RegistryKey:DeleteValue (string)

in <0x00120> RegBug:Main (System.String[] args)


I know before this hadn't made it into the trunk, so I'm wondering if 
perhaps it still hasn't. Can anyone provide some insight into it? Thanks!


--
Cory Foy
http://www.cornetdesign.com
using Microsoft.Win32;
using System;

public class RegBug
{
  public static void Main(String[] args) 
  {
string subkey = @"Software\nunit.org\Nunit\2.4";
using(RegistryKey key = Registry.LocalMachine.CreateSubKey(subkey))
using(RegistryKey fooKey = key.CreateSubKey("foo"))
{
	Console.WriteLine("Setting Values");
	key.SetValue("X", 5);
	fooKey.SetValue("Y", 6);

	Console.WriteLine("Clearing Names");
	foreach(string name in key.GetValueNames())
	  key.DeleteValue(name);

	Console.WriteLine("Clearing Subkeys");
	foreach(string name in key.GetSubKeyNames())
	  key.DeleteSubKeyTree(name);
}

Console.WriteLine("All Clear");

  }
}
___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list